javascript:复制数组计算机等级考试

文章作者 100test 发表时间 2010:01:01 12:31:30
来源 100Test.Com百考试题网


  一、 错误实现

  不少人可能直接就用等号进行赋值了:

  var array1 = new Array("1","2","3").

  var array2.

  array2 = array1.

  array1.length = 0.

  alert(array2). //返回为空

  这种做法是错的,因为javascript分原始类型与引用类型(与java、c#类似)。Array是引用类

  型。array2得到的是引用,所以对array1的修改会影响到array2。

  二、 使用slice()

  可使用slice()进行复制,因为slice()返回也是数组。

  var array1 = new Array("1","2","3").

  var array2.

  array2 = array1.slice(0).

  array1.length = 0.

  alert(array2). //返回1、2、3

  三、 使用concat()

  注意concat()返回的并不是调用函数的Array,而是一个新的Array,所以可以利用这一点进行复制。

  var array1 = new Array("1","2","3").

  var array2.

  array2 = array1.concat().

  array1.length = 0.

  alert(array2). //返回1、2、3


相关文章


用JavaHelp系统开发和交付更好的文档计算机等级考试
加快在JDBC设计中的JSP数据库访问速度计算机等级考试
实例讲解在JSP开发中的对象和范围属性计算机等级考试
java编程模式:桥接模式(BridgePatter)计算机等级考试
javascript:复制数组计算机等级考试
javascript:JQ实现双色表格计算机等级考试
javascript:JS实现双色表格计算机等级考试
javascript:逃走的按钮计算机等级考试
如何实现Ext的checkBox的横排效果计算机等级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛