js数组去重 数组拼接 替换数组中的指定值 递归数组 判断数组中是否存在指定值 数组求和 根据条件判断数组值

这是学习过程中记录的一些关于数组操作的常用属性或方法,记录一下方便以后使用。

// 数组去重

var arr1 = [1,1,2,3,4,5,6,3,2,4,5,'a','b','c','a',6,7,8,3,5,7,8,34]

// console.log(Array.from(new Set(arr1))) // [1, 2, 3, 4, 5, 6, "a", "b", "c", 7, 8, 34]

// 数组拼接 concat() 此方法不会更改现有数组,而是返回一个新数组。可拼接多个数组

// var new_array = old_array.concat([ value1 [,value2 [,... [,valueN ]]]])

var arr2 = [1,2,3,4,5]

var arr3 = [6,7,8,9,0]

// console.log(arr2.concat(arr3)) // [1,2,3,4,5,6,7,8,9,0]

// 该Array.isArray() 方法确定传递的值是否为Array。

Array.isArray([1, 2, 3]);  // true

Array.isArray({foo: 123}); // false

Array.isArray('foobar');  // false

Array.isArray(undefined);  // false

// 修改替换数组中的指定索引的值(会改变原数组) 返回修改后的新数组

// arr .fill(value [,start [ ,end]])

// value 填充数组的值。 start 开始的索引(可选)。end 结束索引(可选),默认为this.length。

[1, 2, 3].fill(4);              // [4, 4, 4]

[1, 2, 3].fill(4, 1);            // [1, 4, 4]

[1, 2, 3].fill(4, 1, 2);        // [1, 4, 3]

// flat()递归到指定深度的数组。该flat()方法创建一个新数组,所有子数组元素以递归方式连接到指定的深度。

// var newArray = arr .flat([depth]); // depth (可选)要递归到的深度默认1

var arr4 = [1,2,[3,4]];

console.log(arr4.flat()) // [1,2,3,4]

var arr5 = [1,2,[3,4,[5,6]]];

console.log(arr5.flat(2)) // [1,2,3,4,5,6]

// 该includes()方法检索数组是否存在其条目中包括的特定值,返回true或false。

// arr .includes(valueToFind [,fromIndex]) // valueToFind 要搜索的值。fromIndex (可选)从第几位开始搜索默认 0

[1, 2, 3].includes(2);    // true

[1, 2, 3].includes(4);    // false

// 数组求和 reduce()  accumulator 累加后的值  currentValue 当前值

const arr6 = [1, 2, 3, 4];

const reducer = (accumulator, currentValue) => accumulator + currentValue;

// 1 + 2 + 3 + 4

console.log(arr6.reduce(reducer)); // 10

// 该some()方法测试数组中是否至少有一个元素通过了检测

// arr.some(callback(element [,index [,array]]) [,thisArg ])

var arr7 = [1, 2, 3, 4, 5];

var even = function(element) {

  return element === 2;

};

console.log(arr7.some(even));

// toString() 把数组变成字符串

var array1 = [1, 2, 'a', '1a'];

console.log(array1.toString()); // "1,2,a,1a"

你可能感兴趣的:(js数组去重 数组拼接 替换数组中的指定值 递归数组 判断数组中是否存在指定值 数组求和 根据条件判断数组值)