1.reduce,reduceRight:使用指定函数对数组元素进行组合,生成单个值。“折叠”
接受两个参数,第一个是执行化简操作的函数,第二个是个可选值表示传递给化简函数的初始值。
let arr = [1, 2, 3, 4, 5];
arr.reduce(function (x, y) {return x+y;}, 0)
// 0+1+2+3+4+5 => 15
reduceRight功能和reduce一致只是是从右往左开始计算
arr.reduceRight(function (x,y) {return x+y}, 0)
// 0+5+4+3+2+1 => 15
2. indexOf 和 lastIndexOf搜索整个数组是否有符合指定元素
找到就返回索引值,找不到就返回-1
let arr = [6, 7, 8, 9, 0];
arr.indexOf(7); //1
arr.lastIndexOf(7); // 1
indexOf从头开始查找;
lastIndexOf从尾开始查找;
3. Array.isArray用来检测未知对象是否为数组
Array.isArray({}]); // false
Array.isArray([]); // true
4. 函数有实参与形参的区别,实参是函数运行时实际接收的参数,形参是函数定义时的参数。函数在运行时,会根据传入的实参返回函数调用表达式的值。函数在调用时除了传入的实参还会有本次调用上下文。
如果函数加挂在某个对象上,则称该函数是对象的方法。这个对象就是函数运行时的上下文对象,也就是this对象
网友评论