array 数组

1.数组的length是只读的么?

2.数组包含的项有数量的限制么?

3.如何检测一个变量是否是数组

4.向一个数组 var arrs = ["test","nahd"]; arrs[99] = "test"; 那么 arrs[20]的值是多少,数组的长度是多少?

5

有一个数组是 var arrs = ["test", "test2","test3","test4","test5"]; 那么如果我想取它第2到第三个元素,也就是test2,test3
并它们赋值给一个新的数组,不影响原数组的情况下,。使用slice实现/splice分别实现

6.向数组插入一个新的变量 var arrs = ["sets","set2","set3","set4","set5","set6"];  向数组的第1位插入"newset",使变量变为["sets","newset","set2","set3","set4","set5","set6"]

7.把数组 var arrs = [1,2,3];中删除2,并在原来2的位置插入4,5两个变量,变为 [1,4,5,3]。

8.把数组倒过过来var arrs = ['sd', 'dss','as'];,使得arrs = ['as','dss','sd'];

9.sort排序数字有问题么 var arr = [1,2,5,10].打印 arr.sort(); 能否正确排序

10.数组排序,既然无法直接使用sort() ,那么如何实现数字从大到小的排列

解答:

1.不是只读的,length可以取修改数组的值。

2.有数量的限制,超出就无法记录。这个值是42.9亿

3.Array.isArray(...); 

4.arrs[20]的值是 underfined ,长度是100

5.使用slice(初始位置,结束位置(不包含))(裁剪)

var arrs = ["test", "test2","test3","test4","test5"]; 
var newarr = arrs.slice(1,3);
console.log(newarr)

使用splite(从哪个位置开始裁剪,裁剪的长度,新插入的值)(拼接) 

var arrs = ["test", "test2","test3","test4","test5"]; 
    var newarr = arrs.splice(1,2);
    console.log(newarr);

6.

var arrs = ["sets","set2","set3","set4","set5","set6"];
    var newarr = arrs.splice(1,0,"newset");
    console.log(arrs);

7.

var arrs = [1,2,3];
    arrs.splice(1,1,4,5);
    console.log(arrs);

8

//把数组倒过过来var arrs = ['sd', 'dss','as'];,使得arrs = ['as','dss','sd'];
    var arrs = ['sd', 'dss','as'];
    arrs.reverse();
    console.log(arrs);

9.

   //sort排序数字有问题么 var arr = [1,2,5,10].打印 arr.sort(); 能否正确排序
   //不能,因为sort会把变量变成字符串再判断
   var arr = [1,2,5,10];
   console.log(arr.sort()); // [1, 10, 2, 5]

10.sort()直接排序比较的是数字转化成字符串以后的大小。

var arr = [1,2,5,10];
   (arr.sort(function(a,b){
        if(a< b){
            return 1;
        }else if(b > a){
            return -1;
        }else{
            return 0;
        }
   }))
   console.log(arr);
原文地址:https://www.cnblogs.com/chenyi4/p/11989016.html