生活
这一学期过的是真的快,可能是因为疫情在家待了一月。感觉还没多长时间就快要期末考试了。说实话,大二学的东西是真的难,到现在还没咋看书。等这个项目写的差不多了,要抽出时间来看看专业课的书了,不能挂科了。还有四级,估计是过不了了,放平心态就好。
学习(js数组)
感觉自己基础知识不会,难的又搞不明白,唉,废了。现从基础的学起。
1.创建和赋值
- let array=new Array(1,2,3,4,5)
- let array=[1,2,3,4,5]
- let array=new Array()
1. array[0]=1
2. array[1]=2
3. array[2]=3
4. array[3]=4
5. array[4]=5
2.数组的查看
1. console.log(数组名):普遍的查看方法
2. console.table(数组名):这种查看方法让数组更加的直观。
3.二维数组的创建和输出
- let array=[[1],[2,3],[4,5,6]]
- let array=[{1},{2,3},{4,5,6}]
4.数组的一些用法
-
数组的长度:数组名.length
-
数组的合并:
-
数组名.concat(数组名)或数组名.concat(数组名,数组名)
-
es6语法扩展运算符:let array=[…数组名,…数组名,…数组名]
-
es6扩展运算符:将一个数组转换为用逗号分隔的参数序列。如果一个数组为空,则不产生任何影响。只有在调用的时候扩展运算符才能放到()里面,否则会报错。
-
注意:扩展运算符是浅拷贝。扩展运算符方法合并成了新数组,但是它的成员都是堆原数组成员的引用,这就是浅拷贝,如果修改了原数组的成员,新数组也会修改。
-
-
将数组转换为字符串,各个元素间用都好隔开。
- 数组名.join()
-
删除数组的最后一个元素
-
数组名.pop(),此方法对伪数组不可用。
-
将伪数组转换为数组
-
[].slice.call(数组名)
-
Array.prototype.slice.call(数组名)
var arr = [], len1 = pagis.length; for (var i = 0; i < len1; i++) { arr.push(pagis[i]); //arr[i]=pagis[i] }
-
-
[…伪数组名]
- Array.from (伪数组名)
-
数组反转
- 数组名.reverse()
-
删除数组的第一个元素
- 数组名.shift()
-
截取数组元素
- 数组名.slice(数组下标,数组下标):(左闭右开)
-
排序
- 按字母顺序升序:数组名.sort()
- 按数字顺序升序:数组名.sort(function(a,b){return a-b})
- 按数字顺序降序:数组名.sort(function(a,b){return b-a})
-
在数组固定位置添加元素
- 数组名.splice(元素的下标, 元素下标后元素删除的个数, “添加的元素名”, “添加的元素名”);
var fruits = ["Banana", "Orange", "Apple", "Mango"]; // 在位置 2,添加 2 个元素,删除 1 个元素: fruits.splice(2, 1, "Lemon", "Kiwi"); //Banana,Orange,Lemon,Kiwi,Mango
-
在数组开头添加新元素
- 数组名.unshift(“元素名”,“元素名”)
-
复制数组
const a1 = [1, 2]; const a2 = a1; a2[0] = 2; a1 // [2, 2]浅拷贝
const a1 = [1, 2]; const a2 = a1.concat(); a2[0] = 2; a1 // [1, 2]
const a1 = [1, 2]; // 写法一 const a2 = [...a1]; // 写法二 const [...a2] = a1;
持续更新中。
-