/*js数组方法详解 */
/*
* 1 concat() 用于连接多个数组或者值--------------
* 2 copyWithin() 方法用于从数组的指定位置拷贝元素到数组的另一个指定位置中。()此方法没太明白
* 3 every() 用于数组中是否所有元素都满足条件------
* */
function fn4() {
var arr = [1, 2, 3, 4, 5];
var re = arr.every(function (v, k, arr) {
console.log(v, k, arr);
return v > 0;
})
console.log(re);
}
/*
4 fill() 对数字进行指定元素填充--------------------------------------
*注:不可改变数组长度
* array.fill(value, start[, end])
*/
function fn5() {
var arr = [1, 2, 3];
arr.fill('*', 1, 5);
console.log(arr);//[1, "*", "*"]
}
/*
*5 filter() 过滤数组中满足条件的元素--------------------------------
* */
function fn6() {
var arr = [12, 3, 43, 4, 4, 34, 4, 5, 54, 646];
var re = arr.filter(function (v, k, arr) {
return v > 10;
})
console.log(re);
}
/*
* 6 find() 查找数组中首个满足条件的元素 没有返回undefined-------------
* 注意: IE 11 及更早版本不支持 find() 方法。
* */
function fn7() {
var arr = [12, 3, 43, 4, 4, 34, 4, 5, 54, 646];
var re = arr.find(function (v, k, arr) {
return v > 2399;
})
console.log(re);
}
/*
*
*7 findindex() 返回满足条件首个元素的下标-------------------------
* array.findIndex(function(currentValue, index, arr), thisValue)
* 与indexof的差别 indexof 不可检测NaN
*
* */
/*
* 8 forEach() 遍历数组-------------------------
* 不改变原数组 无返回值
* */
function fn8() {
var arr = [12, 3, 43, 4, 4, 34, 4, 5, 54, 646];
var re = arr.forEach(function (v, k, arr) {
console.log(v * 2);
})
console.log(arr);
}
/*
* 9 includes() 判断一个数组是否包含某个元素------------------------
* 可检测nan
*10 indexof()------------------------------------
* 11 join() 数组转化为字符串-------------------
* 12 lastindexof()
*
* */
/*
* 13 map() 返回操作后的数组
* */
function fn9() {
var arr = [12, 3, 43, 4, 4, 34, 4, 5, 54, 646];
var re = arr.map(function (v, k, arr) {
return v + 1;
})
console.log(re);
}
/*
* 14 pop() 返回删除的元素---------------------------------
* 15 push() 新数组长度---------------------------------
* 16 shift() 删除的元素---------------------------------
* 17 unshift() 新数组长度---------------------------------
*
* */
/*
* 18 reduce()
* 19 reduceRight() 从右侧开始
* */
function fn10() {
/*数组元素累加*/
var arr = [1, 2, 3, 4];
var re = arr.reduce(function (sum, num) {
console.log(sum, num);
return sum + num;
})
console.log(re);
}
/*
*20 reverse() 翻转数组元素位置
* *//*
* 21 slice() 截取数组 不改变原数组
* */
function fn11() {
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var re = arr.slice(0, 3);
console.log(arr, re);
}
/*22 some() 查找数组中是否含有某个元素 返回布尔值 检测到后后面的元素则不再遍历
* */
function fn12() {
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var re = arr.some(function (v, k, arr) {
return v > 1;
})
console.log(re);
}
/*
*23 splice() 从数组中添加或者删除元素 返回切割的数组 原数组减少
* array.splice(index,howmany,item1,.....,itemX)
*
* 24 toString()
* 25 valueOf() 是数组对象的默认方法。不会改变原数组
* */