教程集 www.jiaochengji.com
教程集 >  脚本编程  >  javascript  >  正文 js数组定义 js数组属性与方法教程

js数组定义 js数组属性与方法教程

发布时间:2015-06-22   编辑:jiaochengji.com
本文介绍了js数组定义的方法与实例,并介绍了js数组属性与方法的相关知识,对于掌握js数组操作很有帮助,有需要的朋友参考下。

在js中,数组有四种定义的方式
使用构造函数:
 

复制代码 代码示例:
var a = new array();
var b = new array(8);
var c = new array("first", "second", "third");
 

或者数组直接量:
 

复制代码 代码示例:
var d = ["first", "second", "third"];

二,js数组的属性

array只有一个属性,就是length,length表示的是数组所占内存空间的数目,而不仅仅是数组中元素的个数,在刚才定义的数组中,b.length的值为8。

例子:
 

复制代码 代码示例:
<script>
var a = new array("first", "second", "third")
a[48] = "12"
document.write(a.length)
//结果49
</script>
 

数组的length属性是可写的,这是一个非常有意思的属性,可以通过这种方法来截取数组。

例子:
 

复制代码 代码示例:
<script>
var a = new array("first", "second", "third")
delete a[1]
document.write(a.length)
//结果3,说明即使删除也无法改变数组的长度
var a = new array("first", "second", "third")
a.length = 1 (教程集 www.jiaochengji.com 编辑整理)
document.write(a.length)
//结果1,说明只剩下一个元素了
</script>

三,js数组的方法

这里并没有包括ie和ff并不兼容的一些方法:
 

tostring():把数组转换成一个字符串
tolocalestring():把数组转换成一个字符串
join():把数组转换成一个用符号连接的字符串
shift():将数组头部的一个元素移出
unshift():在数组的头部插入一个元素
pop():从数组尾部删除一个元素
push():把一个元素添加到数组的尾部
concat():给数组添加元素
slice():返回数组的部分
reverse():将数组反向排序
sort():对数组进行排序操作
splice():插入、删除或者替换一个数组元素

tostring() 方法,tolocalestring()方法的作用类似,ff下的作用是完全相同的,ie的话如果元素是字符串,会在“,”后面加上一个空格,如果元素是 数字,会扩展到两位小数,两者都会改变字符串的length属性,所以考虑到兼容性,尽量不要使用tolocalestring()方法。 (教程集 www.jiaochengji.com 编辑整理)
例子:
 

复制代码 代码示例:
<script>
var a = new array(1, 2, 3, [4, 5, [6, 7]])
var b = a.tostring() //b为字符串形式的 "1, 2, 3, 4, 5, 6, 7"
var c = new array(1, 2, 3, [4, 5, [6, 7]])
var d = c.tolocalestring() //d为字符串形式的 "1, 2, 3, 4, 5, 6, 7"
//tostring()方法和tolocalestring()方法都可以拆解多维数组
</script>
 

join()方法将数组中的所有元素转换成字符串,然后连接起来,这刚好和string的split()方法是一个相反的操作。
join()默认是使用“,”作为分隔符,当然你也可以在方法中指定分隔符。

例子:
 

复制代码 代码示例:
<script>
var a = new array("first", "second", "third")
var s = a.join("...")
document.write(s)
//结果“first...second...third”
</script>
 

pop()方法可以从数组尾部删除若干个元素,push()方法把一个元素添加到数组的尾部,这两个方法刚好是两个相反的操作。
两个都是对原来的数组进行操作,但是要注意push()方法返回的是新的数组的长度,而pop()方法则返回被删去的那个元素。

例子:
 

复制代码 代码示例:
<script>
var a = new array(1, 2, 3)
var b = a.push(4,5,[6,7]) //a为[1, 2, 3, 4, 5, [6, 7]]  b为6  注意push()方法不会帮你打开一个数组
var c = new array(1, 2, 3, 4, "first")
var d = c.pop() //c为[1, 2, 3, 4]  d为字符串形式的"first"
</script>
 

shift() 方法可以从数组头部删除一个元素,unshift()方法把若干元素添加到数组的头部,这两个方法刚好是两个相反的操作。两个都是对原来的数组进行操作, 但是要注意unshift()方法返回的是新的数组的长度,而shift()方法则返回被删去的那个元素。

例子:
 

复制代码 代码示例:
<script>
var a = new array(1, 2, 3)
var b = a.unshift(4,5,[6,7]) //a为[4, 5, [6, 7], 1, 2, 3]  b为6  注意unshift()方法不会帮你打开一个数组,还有就是被插入数值的顺序
var c = new array("first", 1, 2, 3, 4)
var d = c.shift() //c为[1, 2, 3, 4]  d为字符串形式的"first"
</script>
 

concat()方法可以返回一个在原有数组上增添了元素的数组,元素用“,”分隔,元素中如果有数组,将被展开并继续添加,但不支持多维数组形式的展开添加。

例子:
 

复制代码 代码示例:
<script>
var a = new array("first", "second", "third")
s = a.concat("fourth",["fifth", "sixth"],["seventh", ["eighth", "ninth"]])
document.write(s[7])
// 结果“eighth, ninth”,说明“eighth, ninth”是以数组的形式被添加了进去,此是s的值为["first", "second", "third", "fourth", "fifth", "sixth", "seventh", ["eighth", "ninth"]]
</script>

补充一点:本节js数组实例较多,对js数组不是很熟悉的朋友,请参考链接:
 

js数组用法完全教程 js数组操作之基础学习指南 js数组操作基础及属性介绍 js数组操作方法大全

您可能感兴趣的文章:
js数组定义方式有哪些
js数组对象的3个属性
js数组定义 js数组属性与方法教程
js数组用法完全教程
JS array 数组用法详解
js数组操作(js数组创建、js数组访问等)
[javascript 学习笔记] 1. 面向对象
js数组声明与数组遍历的方法
js 删除数组的几种方法
javascript创建联合数组的小例子

关键词: js数组   
[关闭]
~ ~