数组特点
- 所有元素的数据结构,数据类型必须统一
- 有索引值,有序的
创建数组
语法:
var 变量 = new Array(数组内的元素);例:
var arr = new Array(1,2,3,'WKS',{name:'孙悟空'});//参数可以是数组内的元素
console.log(arr).
var arr1 = new Array(4)//参数也可以是数组的长度
arr1[0]='a';
arr1[1]='c';
arr1[2]='b';
console.log(arr1);//arr长度为4,但只有三个值
删除数组元素
delete 删除运算符,删除赋值,赋值变为undefined,数组长度不变。
用途:删除数组元素赋值,对象属性赋值
例:
console.log(arr)
var arr1 = new Array(4)
arr1[0]='a';
arr1[1]='c';
arr1[2]='b';
arr1[3]='d';
delete arr1[0];//删除索引值为0的值
console.log(arr1)
新增元素(push,unshift,concat)
- 从数组尾部添加元素,返回值是数组的长度
语法:
var 变量 = 要添加元素的数组.push(变量或者其它的数据类型); 例
var arr = ['inner'];
var num = 23;
var len = arr.push(num,num,'true',true);//可以重复添加
console.log(arr,len); // 5
- 从数组头部添加元素,返回数组长度
语法
var 变量 = 要添加元素的数组.unshift(变量或者其它的数据类型); 例
var arr = ['inner'];
var len1 = arr.unshift('从头部添加','sss')//第一个添加的元素的索引值为0
console.log(arr,len1);// 3
- 合并元素,并返回合并后的结果,括号里可以添加多个数组合并,返回值是合并后的数组
语法
var 接收数据的变量 = 要跟别的数组合并的数组变量.concat(被合并的数组);例:
var a = [1,2,3,4];
var b = ['1','2'];
var c = ['3','4'];
var d = 'jsndiosadj';
var e = a.concat(b,c,d);
console.log(e,a);
删除数组元素(pop,shift,splice)
- arr.pop()从数组尾部删除元素,返回被删除的元素
语法:
var 变量 = 要删除元素的数组.pop(); 例:
var arr = [2,3,4,5.8,9,9.8,7,'aaa'];
var res = arr.pop();
console.log(arr,res);
- arr.shift() 从数组头部删除元素,并返回被删除的元素
语法:
var 变量 = 要删除元素的数组.shift();例:
var arr = [2,3,4,5.8,9,9.8,7,'aaa'];
var res1 = arr.shift();
console.log(arr,res1);
- arr.splice(index,len) 从第几个索引开始,删除几个元素,并返回删除内容
语法:
var 变量 = 要删除元素的数组.splice(第一个参数是数组的索引值,代表从哪开始删,第二个参数是删除数量);例:
var arr1 = [1,2,3,4,5,6,7,8,9,0];
var res2 = arr1.splice(2,3);
console.log(arr1,res2);
删除修改(splice)
arr.splice(0)是清空数组;例:
var arr = [1,2,3,4,5,6,7,8,9];
arr.splice(0);
console.log(arr);
arr.splice(4)是保留数组长度为4,之后的删除: 例:
var arr = [1,2,3,4,5,6,7,8,9];
var res = arr.splice(5)
console.log(arr);
替换
第三个参数和之后的参数都是替换的删除元素,也可以不删除只添加,可以替换或者添加数组和任意其它数据。例:
var arr = [1,2,3,4,5,6,7,8,9];
var res = arr.splice(1,2,'2','3');
console.log(arr,res);
插入
从第几个索引值开始,删除0个就是不删除,然后第三个参数之后的添加进数组,例:
var arr = [1,2,3,4,5,6,7,8,9];
var res = arr.splice(1,0,'氢氦锂铍硼'); //这里从索引值为1的地方插入//res返回的是删除的内容
console.log(arr)
查询数组中是否存在某个元素
arr.indexof() 查询数组中是否存在某个元素。
不存在:返回 -1
存在:返回值所在的数组的索引值。例:
var arr = [2,3,5,6,7,8,'dfd'];
var res = arr.indexOf(2);
console.log(res); //因为2在数组中的索引值是0所以res值为0
颠倒数组
arr.reverse()颠倒数组:例:
var arr = [1,2,4,6,8,0];
var res = arr.reverse();
console.log(res,arr);
数组变字符串
arr.toString();例:
var arr = [1,2,4,6,8,0];
var str = arr.toString();
console.log(str);.// 值1,2,4,6,8,0
arr.join();例:
var arr = [1,2,4,6,8,0];
var str1 = arr.join('')//把,号变空字符
console.log(str1);// 值为124680