关于数组的方法

数组前面添加

var arr=[1,3];

arr.push(4);

console.log(arr);

var arr=[1,3];

var a=arr.push('fsdfsd');

console.log(a);

数组前面添加

var arr=[1,3];

arr.unshift(0); //ie6 7不支持

console.log(arr);

var arr=['a','b','c','d'];

arr.pop();

arr.shift();

console.log(arr);

splice删除、添加、替换 返回值是被删除的东西

删除

var arr=['a','b','c','d'];

arr.splice(0,1);

console.log(arr);

替换

var arr=['a','b','c','d'];

arr.splice(0,1,'aa');

console.log(arr);

添加

var arr=['a','b','c','d'];

arr.splice(1,0,'bb');

console.log(arr);

数组去重

//数组去重

var arr=[1,3,5,5,7,7,7,5,3,1];

for(var i=0;i<arr.length;i++){

      for(j=i+1;j<arr.length;j++){

         if(arr[i] === arr[j]){

                arr.splice(j,1);

                 j--;

         }

    }

}

console.log(arr)

var a=["b", "n"];

var string=a.join(',');

console.log(string);

var str=['a','f','g','b'];

console.log(str.sort());


关于数组的增加、修改、删除

添加数组末尾一项:arr.push()或arr[x]或arr[arr.length]或splice()

删除数组最后一项:arr.pop()或arr.length--

删除数组中的首项:arr.shift()

向数组开头增加一项:arr.unshift()

增、删、改arr.splice(n,m)从索引n开始,删除m个元素,把删除的内容以一个新的数组返回,原来的数组改变

删除

arr.splice(n)从索引n开始,删除到数组末尾

arr.splice(0);清空数组,把之前的数组克隆了一份一模一样的

arr.splice();一个参数也没有,返回的是一个空数组

修改

arr.splice(n,m,x)从索引n开始,删除m个元素,用x替换删除的部分

增加

arr.splice(n,0,x)从索引n开始,一个都不删(返回的是一个空数组),把x增加到索引n的前面,原来的数组改变


关于数组的截取和拼接

arr.slice(n,m)从索引n开始,一直到索引m(不含m),将找到的部分数组返回,原来的数组不变

arr.slice(n)从索引n开始周一直找到数组末尾

arr.slice(0)把原来的参数克隆一模一样的

arr.concat(arr1):把两个数组拼接到一起,原来的数组不变

arr.concat()把arr克隆一份一模一样的数组


把数组转换为字符串

arr.toString()把数组转换为字符串,原来的数组不变

arr.join('+')把数组按照指定的分隔符拼接成字符串,原来的数组不变

eval()js中把字符串式执行的变成js表达一个方法


字符串转换为数组

将字符串按照指定的分隔符拆分成数组

string.split('+');根据+来拆分成数组

string.split('');将每一个字符拆分成数组


排序和排列

arr.reverse()把数组倒过来排序,原来的数组改变

arr.sort()按照数组的第一位从小到大排序(只能处理10以内的数组进行排序)

由小到大

arr.sort(function (a,b) {

       return a-b;

});

由大到小

arr.sort(function (a,b) {

       return b-a;

})

只有在标准浏览器中兼容的方法,在ie6~8下不兼容

indexOf()、lastIndexOf()(字符串中也有这两个方法,字符串中的这两个方法兼容所有的浏览器,而数组的这两个方法是不兼容的)

indexOf()、lastIndexOf()当前内容在数组中第一次/最后一次出现位置的索引,如果数组中没有这一项,返回的结果是-1,如果有这一项,索引是几就返回几原来的数组不变

forEach和map

forEach:数组中有几项,我们的函数就执行几次,原来的数组不变

map和forEach的语法是一样的,但是比forEach多加了一个把原来内容进行替换的功能,原来的数组不变,返回的新数组会变化

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容