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);