js数组对象 *** 作

js数组对象 *** 作,第1张

声明创建一个数组对象: var arr = new Array() 或者 var arr = []

连接两个或者多个数组,并且返回该数组,语法: array.concat(object,object,......)

通过指定字符(参数)对数据进行分割,返回字符串,参数省略的话则用默认用逗号为分隔符

删除数组的最后一个对象,返回该删除元素的值

向数组末尾添加一个或者多个对象,语法: array.push(newObject1,newObject2,.....)

删除数组的第一个对象,并返回删除的元素

向数组开头添加一个或者多个元素,并返回新的长度

从已知数组中返回指定选中的数据(不包括end 对应的元素),如果省略 end 将复制 start 之后的所有元素,该 *** 作不会修改原数组的数据, slice(start,end)

向数组中删除/添加对象,并返回被删除的元素

splice(index,count,item1,item2,......)

方法用户对数组的排序, sort(sortby) ,sortby可选,必须是函数。如调用方法没有使用参数,则按字母顺序进行排序。

只要有一个满足的就返回true,没有满足的返回false

验证数组中是否每个元素都满足指定的条件

没有返回值,可以不知道数组长度

arr.forEach(function(res,index){ })

返回值组成新数组,原数组不变

过滤通过条件的元素组成一个新数组,原数组不变

查找出第一个符合条件的数组成员,并返回该成员,如果没有找到就返回undefine

找到的是位置,找不到返回 -1

填充, arr.fill(填充的东西,start,end) 包括end

举个简单例子,希望你能明白,

1、下面输出结果是"jim",而不是"tom",

是因为数组中保存的都是指向json对象a的地址,

dd[0],dd[1],dd[2],dd[3]对象指向的内存地址相同,

当修改其中一个dd[0]的属性值的时候,数组所有元素指向的对象属性值都改变了。

var

dd

=

[]var

a

=

{

"cname":

"tom"

}for

(var

i

=

0

i

<4

i++)

{

dd[i]

=a}dd[0].cname

=

"jim"alert(dd[2].cname)2、下面输出结果是0,而不是1,

是因为数组元素dd[0],dd[1],dd[2],dd[3]对应的内存地址都不同,互不干扰。

var

dd

=

[]var

a

=

0for

(var

i

=

0

i

<4

i++)

{

dd[i]

=a}dd[0]=1alert(dd[2])

希望对你有帮助!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11943905.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存