1.concat()属性

作用:用于合并或者多个数组

语法:

let arr1 = [1, 2, 3]   let arr2 = [4, 5, 6]    let arr3 = arr1.concat(arr2)   

console.log(arr3)  生成 [1,2,3,4,5,6]

2.copyWithin()属性

作用:从数组的指定位置拷贝元素到数组的另一个位置,第一个参数是目标位置,第二个参数是拷贝元素的起始位置,第三个参数是拷贝元素的结束位置,如果不设置第三个参数,拷贝元素结束位置就是目标位置的前一位

语法:

let arr4 = [11, 22, 33, 44, 55, 66, 77, 88];

arr4.copyWithin(2, 4, 7) 从第三个开始覆盖掉,生成[11, 22, 55, 66, 77, 66, 77, 88] 取前不取后

arr4.copyWithin(2, 4) 从第2个开始覆盖第4个往后,生成 [11, 22, 55, 66, 77, 88, 77, 88]

console.log(arr4);

3.fill()属性

作用:使用一个固定值来填充数组

语法:

let arr5 = new Array(5);

arr5.fill(50);

console.log(arr5);  生成[50,50,50,50,50]

4.includes  属性

作用:从数组中检查指定的属性是否存在,存在返回true,否则返回flase

语法:

let arr6 = [11, 22, 33, 44, 55, 66, 77];

console.log(arr6.includes(88));  数组中没有88,返回false

console.log(arr6.includes(22));  数组中有22,返回true

5.indexOf  和 lastindexOf  属性

作用:indexOf从数组中检查指定的数据的位置(从前往后找第一个),不存在返回-1,lastindexOf是从后往前找

语法:

let arr6 = [11, 22, 33, 44, 55, 66, 77];

console.log(arr6.indexOf(88));   没有88,返回-1  

console.log(arr6.indexOf(11));   有11 ,返回0   0是11在数组的索引位置

lastindexOf 同上

6.isArray()属性

作用:检查指定的对象是不是数组,是返回true 否则返回flase

语法:

let str = 'HelloWorld';     console.log(Array.isArray(str));   返回flase

7.join属性

作用:用于将一个数组根据某个字符拼接成字符串,该方法不传参数,默认是以逗号拼接

语法:

let arr = [11, 22, 33, 44, 55, 66, 77];

console.log(arr.join('你好')); 加你好生成   11你好22你好33你好44你好55你好66你好77

console.log(arr6.join('    '));加空格生成    11 22 33 44 55 66 77 以空格隔开

console.log(arr6.join()); 啥也不加是以逗号隔开生成  11,22,33,44,55,66,77

---------------------------------------------以下为核心方法-------------------------------------------

8.push属性

作用:向数组的末尾添加一个或多个元素,并返回新的数组

语法:

 let arr = [1, 2, 3];

arr.push(4, 5); 添加多个元素用逗号隔开  生成 [1, 2, 3,4,5]

9.pop 属性

作用:删除数组的最后一个元素并返回新的数组

语法:

let arr = [1, 2, 3];                             

arr.pop() 括号不加任何属性,

console.log(arr);    生成[1, 2]

10.unshift() 属性

作用:给数组的开头添加一个或多个元素,并返回新的数组

语法:

let arr = [1, 2, 3]; 

arr.unshift(0);

onsole.log(arr);  生成[0,1, 2, 3]

11.shift 属性

作用:删除数组的第一个元素 并返回新的数组

语法:

let arr = [1, 2, 3]; 

arr.shift();括号不加任何属性

onsole.log(arr);  生成[2, 3]

12.reverse 属性

作用:翻转数组顺序

语法:

let arr = [1, 2, 3]; 

arr.revesre()

console.log(arr);  生成 [3,2,1]

13.slice 属性

作用:截取数组的一部分,返回一个新数组,可以设置两个参数,第一个是起始位置,第二个是结束位置(取不到结束位置),并且第二个参数可以省略,表示从起始位置到最后全部截取

语法:

let arr = [1, 2, 3, 4, 5, 6, 7, 8]

console.log(arr8.slice(2, 4));   生成[ 3, 4]

console.log(arr8.slice(2));  生成[3, 4, 5, 6, 7, 8]

14.splice 属性

作用:从数组中添加或者删除元素,如何删除,该方法需要传两个参数:第一个是起始位置,第二个是删除长度,如果第二个参数不传,就表示从起始位置往后全部删除,并返回的是删除后的数组,该方法也可以传三个参数,第三个参数就是删除部分插入的新内容

语法:

let arr = [1, 2, 3, 4, 5, 6, 7, 8]

arr.splice(4,1)  生成[1, 2, 3, 4, 6, 7, 8]   从5开始删1个元素,就是删掉5

arr.splice(4)   生成[1, 2, 3, 4]   从5起始位置往后全部删除

arr.splice(4, 3, '哈喽')  生成[1, 2, 3, 4, '哈喽', 8]    从5开始删3个元素,删掉5,6,7,并且在删除部分生成'哈喽'(就是删除修改数组的内容)

arr.splice(4, 0, '哈喽')  生成[1, 2, 3, 4, '哈喽', 5, 6, 7, 8]  从5开始,删除0个,也就是谁也不删,并在5的前面加个‘哈喽’

15.toString 属性

作用:把数组转换为字符串,并返回结果

语法:

let arr = [1, 2, 3, 4, 5]

console.log(arr.toString()) 生成1, 2, 3, 4, 5

16.split 属性

作用:将字符串根据某个字符串打散成数组

语法:

let str = "我喜欢吃苹果,喜欢吃桃子,喜欢吃香蕉"

console.log(str.split('喜欢')); 生成['我', '吃苹果,', '吃桃子,', '吃香蕉']

console.log(s1.split('')); 如果只写单引号  生成['我', '喜', '欢', '吃', '苹', '果', ',', '喜', '欢', '吃', '桃', '子', ',', '喜', '欢', '吃', '香', '蕉']

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        //  concat 拼接数组,返回一个新的数组
        var arr1 = [1, 2, 3];
        var arr2 = [4, 5, 6];
        var newArr = arr1.concat(arr2);
        console.log(arr1, arr2, newArr);
        // 数组里面放数组,然后进行拼接
        var arr1 = [1, 2, 3];
        var arr2 = [4, 5, [6, 7]];
        var newArr = arr1.concat(arr2);
        console.log(arr1, arr2, newArr);

        // join()将数组元素连接起来以构建一个字符串
        var fruits = ["a", "b", "c", "d"];
        var result = fruits.join("-");
        console.log(result);

        // 向fruits的尾部添加两个值,分别为"x","y"
        fruits.push("x", "y");
        console.log(fruits);

        // pop 从数组的尾部删除元素
        var delItem = fruits.pop();
        console.log(fruits, delItem);

        fruits.unshift("p", "q", "m", "f");
        console.log(fruits);

        const headerItem = fruits.shift();
        console.log(headerItem);
        fruits.reverse();
        console.log(fruits);
        // 排序方法, 改变原数组
        fruits.sort();

        var nums = [12, 23, 8, 1];
        nums.sort(function (a, b) { return b - a; });
        console.log(nums);
        // slice(start, end) 从源数组中分隔出一个子数组[start,end)
        const arr3 = nums.slice(0, 3);
        console.log(nums, arr3);

        const arr4 = nums.slice(3);

        // splice 插入、删除或替换数组的元素

        var musicalInstrument = ["piano", "erhu", "suona"];
        // 向数组中索引为0的位置添加一个元素"guzheng"
        musicalInstrument.splice(0, 0, "guzheng");
        // 向数组中索引为0的位置添加2个元素"guitar","accordion"
        musicalInstrument.splice(0, 0, "guitar", "accordion");
        // 删除索引为2位置的值
        musicalInstrument.splice(2,1);
         // 从索引为2位置开始,向后删除两个元素
         musicalInstrument.splice(2,2);
         // 替换索引为1位置的值是"古筝"
         musicalInstrument.splice(1,1,"古筝")
        console.log(musicalInstrument);
    </script>
</body>

</html>