一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

js数组基础知识之函数声明 元素操作

时间:2014-05-11 编辑:简简单单 来源:一聚教程网

数组的构造函数

由于数组的构造函数在处理参数时的不确定性,因此强烈建议使用 [] 符号来创建一个新数组。

 代码如下 复制代码

[1, 2, 3]; // Result: [1, 2, 3]
new Array(1, 2, 3); // Result: [1, 2, 3]

[3]; // Result: [3]
new Array(3); // Result: []
new Array('3') // Result: ['3']

当只有一个参数被传递到数组的构造函数中,并且这个参数还是一个数字时,构造函数将会返回一个元素值为 undefined的数组,而且这个数组的 length 属性被设置为传入构造函数的数字参数。但实际上上新数组的索引并没有被初始化。

这种用法只有在很少数情况下会被使用,比如循环字符串时,这种用法可以避免使用一个循环。

 代码如下 复制代码

new Array(count + 1).join(stringToRepeat);

总结

综上所述,我们应该尽量使用 [] 来创建新函数,而不是数组的构造函数,这样代码将有更好的可读性。

数据常见操作

因为这篇博文的原文比较短,所以我打算把一些常用的数组操作方法也总结一下:

添加元素

1.push - 将一个或多个新元素添加到数组结尾,并返回数组新长度。

2.unshift - 将一个或多个新元素添加到数组开始,数组中的元素自动后移,返回数组新长度。

3.splice - 将一个或多个新元素插入到数组的指定位置,插入位置的元素自动后移,返回 []。

删除元素

1.pop - 移除最后一个元素并返回该元素值。

2.shift - 移除最前一个元素并返回该元素值,数组中元素自动前移。

3.splice - 删除从指定位置 deletePos 开始的指定数量 deleteCount 的元素,数组形式返回所移除的元素。(注意与添加元素时参数的差异)

遍历数组

 代码如下 复制代码

var dd = {
'a' : '111111',
'b' : '222222',
'c' : '333333'
}
dd['d'] = ['444444','55555555'];
// 遍历数组
function scan_array(arr) {
for(var key in arr) { // 这个是关键
if(typeof(arr[key]) == 'array' || typeof(arr[key]) == 'object') {// 递归调用
scan_array(arr[key]);
} else {
document.write(key + ' = ' + arr[key] + '
');
}
}
}

其他操作

1.join - 返回字符串,这个字符串将数组的每一个元素值连接在一起,中间用 separator 参数隔开。

2.slice - 方法用于返回数组中一个片段或子数组,如果只写一个参数返回参数到数组结束部分,如果参数出现负数,则从数组尾部计数,如果 start 大于 end 返回空数组,slice 不会改变原数组,而是返回一个新的数组。

3.concat - 将多个数组(也可以是字符串,或者是数组和字符串的混合)连接为一个数组,返回连接好的新的数组。

4.reverse - 反转元素(最前的排到最后、最后的排到最前),返回修改后的数组。

5.sort - 对数组元素排序,返回修改后的数组。当没有参数的时候会按字母表升序排序,也可以可以传一个排序方法进去。

热门栏目