数组
有编程基础的直接看代码学习
<body>
<script>
//创建数组的第一种方法,说明数组是引用对象
const arr0 = new Array("aa","bbbb","ccccc",1,2,3,4);
console.log(arr0.join("|"));
//创建数组的第二种方法,一般用这种方法创建数组,也是对象
const arr1 = [1,2,3,4];
console.log(arr1);
let arr2 = [1,2,3,4,5,6,7,8,9];
console.log(arr2);
let arr3 = arr2; //赋值数组 传递的是地址,不是新建一个地址然后传值
arr3[3]=9999;
console.log(arr3); //打印arr3
console.log(arr2); //打印结果和arr3一样
/*
注意,引用类型在被赋值时传递的时地址,但基本数据类型传递的是值,不是地址
*/
let a=1;
let b=a;
b=9999999;
console.log(a);
console.log(b); // a ,b 打印结果不一样
let arr4 = [["aa,bbb"],["cc","ddd"]];//定义二维数组
console.log(arr4);
let arr5 = [{name:"aa",click:33},{name:"js",click:123}];
console.log(arr4[1][1]); //返回坐标为1,1的元素
console.log(arr5[1].name); //类似于字典
let arr6=["abcdefg"];
arr6[4]="hijk"; //直接添加元素不会报错,中间空的位置会自动补充为undefined
console.log(arr6);
console.log(arr6.length);
console.log(arr6[2]);
//这样并不会创建一个元素为6的一元数组
//而是创建了一个长度为6的空数组
let arr7=new Array(6);
console.log(arr7.length);
console.table(arr7);
console.log(arr7);
//正确的创建方法
let arr8 = Array.of(6);
console.log(arr8.length);
console.log(arr8);
</script>
</body>
建议自己动手写一遍看结果。
展开语法
展开语法的一个用处是将两个数组连成一个数组。如下:
<script>
let arr9 = ["abc","defg"];
let hd = ["js","xyz"];
arr9=[...arr9,...hd];
console.log(arr9);
</script>
另一个用法是在函数中传递的参数不确定时使用。
<script>
function sum(...args) {
return args.reduce((s,v)=>{
return (s+=v);
})
}
console.log(sum(1,5,9,8,7,4,5,32,111));
</script>
运行结果: