js有关数组的函数
map()和filter()函数
js的数组迭代器函数map和filter,可以遍历数组时产生新的数组,和python的map函数很类似
1)filter是满足条件的留下,是对原数组的过滤(筛选);
2)map则是对原数组的加工,映射成一一映射的新数组(形成新数组)
例如:var arr=[1,2,3,4]
arr1=arr.map(function(item){
return item%2
)
arr1=[1,0,1,0]
arr2=arr.filter(function(item){
return item%2
})
arr2=[1,3]
some()和evert()函数
every()与some()方法都是JS中数组的迭代方法。(在实际运用中,可以配合if灵活使用)
1)every()是对数组中的每一项运行给定函数,如果该函数对每一项返回true,则返回true(每一项,只要出现一项为false,则停止并且返回false)。
2)some()是对数组中每一项运行指定函数,如果该函数对任一项返回true,则返回true。(只要有一项返回true,则停止并且返回true)
例如:
if (!list.some(function(item, key){
var b = item.goods_id == goods.goods_id;
if (b) {index = key}
return b
})) {
list.push({
add_num: 1,
goods: goods,
storeGoods: goods.storeGoodsList[0]
})
} else {
list[index].add_num ++;
}
用法:
reduce()函数
reduce()可以实现一个累加器的功能,将数组的每个值(从左到右)将其降低到一个值。
reduce(function(前一个值,当前值,数组索引,数组){
})
var arr = [1, 2, 3, 4]
var sum = arr.reduce(function (previous, current, index, array) {
return previous + current;
}); console.log(sum); //
js有关数组的函数的更多相关文章
- js 数组处理函数
本文转载自有有<js 数组处理函数> concat 将参数列表连接到原数组后面形成一个新的数组并返回,原有数组不受影响. var arr = ["a","b& ...
- js对数组的操作函数
js数组的操作 用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简单的string.split(char).这段时间做的一个项目,用到数组的地方很多, 自以为js高手的自己居然无从下手, ...
- JS分割字符串并放入数组的函数
JS分割字符串并放入数组的函数: var InterestKeywordListString = $("#userInterestKeywordLabel").html(); v ...
- Js中常用的字符串,数组,函数扩展
由于最近辞职在家,自己的时间相对多一点.所以就根据prototytpeJS的API,结合自己正在看的司徒大神的<javascript框架设计>,整理了下Js中常用一些字符串,数组,函数扩展 ...
- js经典试题之数组与函数
js经典试题之数组与函数 1:列举js的全局函数? 答案:JavaScript 中包含以下 7 个全局函数escape( ).eval( ).isFinite( ).isNaN( ).parseFlo ...
- js如何判断一个对象是数组(函数)
js如何判断一个对象是数组(函数) 1.typeof操作符 示例: // 数值 typeof 37 === 'number'; // 字符串 typeof '' === 'string'; // 布 ...
- JS数组at函数(获取最后一个元素的方法)介绍
本文介绍js中数组的at函数,属于比较简单的知识普及性文章,难度不大. 0x00 首先,我们可以思考如下一个问题,如果要获取一个数组的最后一个元素(这是很常用的操作),我们应该怎么做? 相信大部分人能 ...
- JS对象 JavaScript 中的所有事物都是对象,如:字符串、数值、数组、函数等,每个对象带有属性和方法。
什么是对象 JavaScript 中的所有事物都是对象,如:字符串.数值.数组.函数等,每个对象带有属性和方法. 对象的属性:反映该对象某些特定的性质的,如:字符串的长度.图像的长宽等: 对象的方法: ...
- JS魔法堂:函数重载 之 获取变量的数据类型
Brief 有时我们需要根据入参的数据类型来决定调用哪个函数实现,就是说所谓的函数重载(function overloading).因为JS没有内置函数重载的特性,正好给机会我们思考和实现一套这样的机 ...
随机推荐
- java Exception in thread "main" java.lang.NoClassDefFoundError: main (wrong name: pm/main)
javac main.java 编译后没有问题 java main 出现下面在问题: Exception in thread "main" java.lang.NoClassDef ...
- part1:13-linux编译器GCC
Gcc特点 Gcc基本用法 1.gcc的概念 GCC(GNU Compiler Collection,GNU编译器套装),是一款由GNU开发的编程语言编译器.GCC原名为GNU C 语言编译器,因为它 ...
- 44 The shopping psychology 购物心理
The shopping psychology 购物心理 ①People can be addicted to different things ---e. g.,alcohol, drugs, ce ...
- Java带图片预览功能的图片上传兼容火狐ie
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- hibernate hql where语句拼接工具类
package com.zhaoshijie.tree.other; /** * hibernate HQL WHERE语句工具类 * * @author 赵士杰 * */public class H ...
- 前端程序员经常忽视的一个 JavaScript 面试题
题目 function Foo() { getName = function () { alert (1); }; return this; } Foo.getName = function () { ...
- MySQL之SQL语句零碎总结
一.MySQL中有个ifnull函数,跟Oracle的nvl类似,用法如下: select* from Ta t where ifnull(pro, 0) < 100; 解释:当pro是null ...
- hdu 5032 不易发觉的树状数组
http://acm.hdu.edu.cn/showproblem.php?pid=5032 给定一个1000x1000的点阵,m组询问,每次询问一个由(0,0).(x,0)点一以及从原点出发的方向向 ...
- 19、Docker Compose
编排(Orchestration)功能是复杂系统实现灵活可操作性的关键.特别是docker应用场景中,编排意味着用户可以灵活地对各种容器资源实现定义和管理. 在我们部署多容器的应用时: 要从D ...
- .NET Core 运行时标识符 (RID) 目录
RID 是什么? RID 是运行时标识符的缩写. RID 用于标识其中将运行应用程序或资产(即程序集)的目标操作系统. 其外观类似如下:“ubuntu.14.04-x64”.“win7-x64”.“o ...