Javascript是一种神奇的
语言,在它的数组中也是独一无二的,我们应该去寻找糟粕,吸取精华,总结最佳实践,如果有
错误,请指出。
Javascript数组是数组的对象,它具有对象的
属性。当属性名是一个小且
连续的整数时,应该使用数组;否则,使用对象。
阵列光源
所有数组
都是由数组构造的,我们将测试构造
函数的属性。
var arr = { };
arr.constructor = / /真实阵列;
arr.constructor = array.prototype.constructor; / /真的
创建一个数组
数组文字方式
VaR arr1 = { 1, 2, 3 } / {1,2,3};
构造函数
方法 VaR arr2 =新(阵列); / / { }空数组
VaR ARR3 =新的数组(9); / / { 9 }一个字符串元素
VaR的新数组(ARR4 = 9); / / { }数组长度为9的长度
var ARR5 =新的数组({ 9 }); / / { { 9 } }相当于一个二维数组
var ARR6 =新的阵列(1, 2, 3); / / { 1, 2, 3 }
VaR ARR7 =新的数组(1,函数f({ O){ },:6 },空,不确定的,真的);
数组可以存储任意混合数据
类型。
由于ARR4,当只有一个数字
参数传递数组构造函数,构造函数返回一个空数组集合的length属性。所以建议使用阵列的文字,简洁明了。
对象是否是数组
VaR arr1 = { 1, 2, 3 };
Typeof(前); / /对象
众所周知,类不能
正确检测类型。
arr1是阵列; / /真的
在
网页中的方式是没有问题的。嵌套其他网页后,有两个全局范围。相互测试时,会出现问题。
Array.isArray(前); / /真的
Array.isArray()是一种新的方法ecmascript5没有缺陷。唯一的问题是,IE8
浏览器不
支持,IE9浏览器不支持严格的
模式。
object.prototype.tostring.apply(arr1)。片(8、1); / /阵列
最后一种方法是检测类型的最佳方法。
数组的长度
数组的长度也是它的属性,长度的增加不会引起交叉错误。
长度值等于数组的整数属性名,最大值为1。
VaR arr1 = { };
前{ 9 } = 1; / /长度为10的数组只包含一个元素,
设置一个小值将
删除与长度相等的属性的属性名称。
如果长度值设为0,则等效为空数组。
VaR arr2 = { 1, 2, 3,4, 5 };
arr2.length = 3; / / { 1, 2, 3 }
arr2.length = 0; / / { }
数组的遍历
遍历数组并不使用for循环遍历数组,因为遍历原型链中的所有属性,但我们不需要这么多。建议使用for循环。
VaR arr1 = { 1, 2, 3 };
arr1.test = 9;
在模式下
对于(在前无功支撑){
cosole.log(道具,arr1 {道具});
}
输出如下
/ / 01
12
23
9 测试
/ /循环模式
对于(var i = 0,len = arr1.length;我< len;i++){
console.log(arr1 {我});
}
输出如下
/ / 1
2
3
我们看到在一个测试值,可由hasownproperty
功能排除在外,但会比循环慢得多。
缓存数组的长度是必要的
步骤,每次访问都有
性能开销(最新的浏览器在这方面进行了
优化)。
总结
简要
介绍了数组的基本知识,这里也是对数组的更全面的了解。
虽然有很多东西我很难理解,但我已经爱上它很久了,因为我现在没有一个姐姐可以让我爱了。