高效javascript编程必知的5个数组方法

本文和大家分享的主要是javascript中关于数组最重要的5个方法,一起来看看吧,希望对大家学习javascript有所帮助。

Array.forEach()

.forEach() 方法能够方便的让你 遍历数组里的每个元素 ,你可以在回调函数里对每个元素进行操作。.forEach() 方法没有返回值,你不需要在回调函数里写 return ,这是无意义的。

var animals = [’dog’, ’cat’, ’mouse’];

animals.forEach(function(item){

console.log(item);

});

Array.map()

.map() 方法能够遍历整个数组,然后 返回一个新数组 ,这个新数组里的元素是经过了指定的回调函数处理过的。

如果你想修改数组里的每个元素,然后将修改后的数组存入新的数组,那使用 .map() 方法最方便。

var numbers = [2, 4, 6, 8];

var doubleNums = numbers.map(function(element) {

return element * 2;

});

console.log(’doubleNums: ’, doubleNums)

Array.filter()

.filter() 方法能够 过滤掉数组中的某些元素 ,你可以在回调函数里设定条件,不符合条件的元素都会排除在外。

var scores = [3, 12, 5, 23, 19, 7];

var topScores = scores.filter(function(item){

if (item > 10){

return true;

else {

return false;

}

});

console.log(’topScores: ’, topScores);

Array.indexOf()

indexOf() 能够告诉你 某个元素在数组中的位置 ,它返回的是索引值,如果数组里有重复的元素,它会返回第一个元素的位置。

var a = [2, 9, 9, 18];

var i = a.indexOf(9);

console.log(’i: ’, i);

/*

if (a.indexOf(7) === -1) {

// 数组中没有这个元素

}*/

Array.every()

.every() 方法的作用是用指定的回调函数去检查数组中的每个元素,如果对于每个元素,这个回调函数都返回true,则 .every() 返回true。否则, .every() 返回false。

如果你想知道数组中的所有元素都是否符合某种条件,使用 .every() 最方便。

var ages = [23, 19, 32, 44];

var olderThan18 = ages.every(function(element) {

return element > 18;

});

console.log(’olderThan18: ’, olderThan18);

上面的这5个方法只是很多JavaScript方法中关于数组的最重要的几个,还有很多关于数组的方法、工具包(lodash and underscore )等都非常的有用。

来源:极客头条

时间: 2024-10-22 02:14:55

高效javascript编程必知的5个数组方法的相关文章

javascript 工作必知(四) 类型转换

string和number boolean javascript 类型会根据赋值的进行转成相应的类型. var str = ""; alert(typeof (str));//string str = 5; alert(typeof (str));//number var sum = str + 5; //+编程两个数字相加 alert(sum);//10       这一种比较明显,一眼就可以计算出其值.但是请看下面这种转换 var sum = "7" + &qu

高效PHP程序必知的53个技巧

用单引号代替双引号来包含字符串,这样做会更快一些.因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号). 1.如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍. 2.$row[’id’] 的速度是$row[id]的7倍. 3.echo 比 print 快,并且使用echo的多重参数(译注:指用逗号而不是句点

SQL Server编程必知必会 -- (37-50点总结)

----------------------------汇总数据--------------------------- --聚集函数用来汇总数据.由多种方法来返回所需的结果,高效,快速获得结果: -- 37. 返回products 表中所有产品的平均价格SELECT AVG(prod_price) AS avg_priceFROM products -- 38. 返回products 表中供应商ID=1003所有产品的平均价格SELECT AVG(prod_price) AS avg_price

javaScript 工作必知(五) eval 的使用

eval eval(parse) parse :里面跟参数字符串,我们知道执行javascript 会编译执行,    改变全局变量的值: var x = 2; //定义的全局变量 alert(x);//2 var g = eval("x=3"); //eval 会根据当前上下文解析x alert(x);//3    在全局作用域引用eval,改变全局作用域的值,不改变局部作用域的值 var g = eval; //全局引用eval var x = "global"

javaScript 工作必知(六) delete in instanceof

in in 判断  左边 的字符串或者能转换成字符串的是否属于 右边 的属性. var data = { x: 1, y: 4 };//定义了直接对象 alert("x" in data);//true ,x 是data 的一个属性 alert(1 in data);//false ,1 是data的属性值. var arr = [4, 5, 7];//定义了直接数组对象 alert(0 in arr);//true ,arr 数组的index包括0,1,2,0 是他的一个[0]属性.

javaScript 工作必知(三) String .的方法从何而来?

String 我们知道javascript 包括:number,string,boolean,null,undefined 基本类型和Object 类型. 在我的认知中,方法属性应该是对象才可以具有的. var str="hello,world"; var s=str.subString(1,4);//ell alert(typeof(str)+":"+typeof(s));//string:string           从上面的返回类型来看,str是strin

javaScript 工作必知(十) call apply bind

call  每个func 都会继承call apply等方法. function print(mesage) { console.log(mesage); return mesage; } print.call(this, "cnblogs");//cnblogs call(thisAgr,agr1,agr2...) ,call方法第一个传递一个context上下文.后面是参数的个数. apply apply(thisAgr,[agr1,agr2]),apply方法和call的用法一样

JavaScript 工作必知(九)function 实参和形参

大纲 Function Caller 返回函数调用者 Callee 调用自身 function 函数格式 function getPrototyNames(o,/*optional*/ a) { a = a || []; for(var p in o) { a.push(p); } return a; } caller func.caller 返回函数调用者 function callfunc() { if(callfunc.caller) { alert(callfunc.caller.toS

javaScript 工作必知(八) 属性的特性 值、写、枚举、可配置

属性的特性 每个对象都拥有属性,属性具有哪些特性呢? 1.属性具有值.  2.属性是否是可写的.            3.是否是可枚举的.            4.是否是可配置的.   "use strict";//使用严格模式 var descriptor = Object.getOwnPropertyDescriptor({ x: 1 }, "x");//获取匿名对象的值 alert("value:" + descriptor.value