js数组相关的笔记

来源:互联网 发布:java traceid 追踪 编辑:程序博客网 时间:2024/06/06 00:09

数组的索引方式
比如 a[1] = “hello”;
Js想把1转成字符串“1”,然后“1”对应值

a[,,,];这样算[undefine,undefine,undefine]三个元素
数组的length区别于对象。
同时length能赋值。
比如

var a = [1,2,3,4,5];a.length = 3;  //a变成[1,2,3]a.length = 0; //a变成[];

Delete 数组元素
Delete a[1];
a数组的长度不变,但是a[i]为undefine

数组函数:
1.join():将数组转换成字符串然后连接在一起返回。
如果有值为undefine,拼接时显示“”
2.reverse :将数组中的元素位置颠倒,需要注意的是,a变成了[5,4,3,2,1]

           var a = [1,2,3,4,5];           a.reverse();           console.log(a)  //[5,4,3,2,1]

3.sort:排序数组,先将数组转成字符串,然后根据字母表顺序排序,也可以传参数,
a,b两个值,如果想要a在前面显示,返回负值,否则返回正。
例子:

var a = [2,1,3,4,5];           a.sort(function(a,b){               if(a>b) return -1;               if(a<b) return 1;           });           console.log(a)    [5,4,3,2,1]

4.concat 将数组拼成新的字符串,返回新的拼接好的数组

var a = [2,1,3,4,5];a.concat([1,2],[3,4])

5.slice(startindex,endindex) 截取数组,开始的索引,结束的索引,如果为负数,相对于最后一个元素的位置。-1表示最后一个元素。 Startindex:开始的索引,endindex,不包括该索引
var a = [1,2,3,4]
a.slice(0,2) // 返回[1,2],a数组的值没有变
6.splice(startindex,length,argument), 返回删除的数组元素,也可以添加元素到数组中去.注意的是,原来数组经过删除,添加也会改变
Demo:

var a = [1,2,3,4,5];a.splice(2,1)  //返回[3]  ,a变成[1,2,4,5]a.splice(2,0,”9”);  返回[],a变成[1,2,9,4,5]

Push 尾部添加,返回长度
Unshift 头部添加,返回长度
Pop 尾部删除,返回长度
Shift 头部删除,返回长度
经常会遇到的数组问题:冒泡排序,和数组去重排序

       var arr = [1,3,6,2,7,8];       for(var i = 0; i<arr.length; i++){           for(var j = i +1; j< arr.length;j++){               var temp;               if(arr[i] > arr[j]){                   temp = arr[i];                   arr[i] = arr[j];                   arr[j] = temp;               }           }       }        console.log(arr)

去重

var arr1 = [2,4,2,5,4,5,7,99,3];var temp2 = [];for(var i=0; i < arr1.length; i++){    if(arr1.indexOf(arr1[i]) == i){        temp2.push(arr1[i])    }}console.log(temp2.sort())
0 0
原创粉丝点击