JavaScript push() 方式详解

访客4年前黑客文章1220

push界说和用法

push() 方式主要用于向数组的末尾添加一个或多个米素,其返回值为添加后新的长度,即push后的数组长度,该值为number类型。

注重:

1.一定是在数组的末尾添加
2.该方式会改变原数组的长度
3.若是需要在数组起始位置添加米素请使用 unshift() 方式


push函数语法

str.push(newele1,newele2,....,neweleX)

参数值说明:

newele1 必须。要添加到数组的之一个米素。
newele2 可选。要添加到数组的第二个米素。
neweleX 可选。可添加多个米素。



说明

push() 方式是把它的参数按顺序举行添加到原数组的尾部,它直接修改了原数组的长度,并不会建立一个新的数组;行使push实现数组进栈功效,出栈可以使用pop方式。


实例

1.一个数组中添加新米素 :

var arr=['红','橙','黄'];
var result=arr.push('绿','蓝');
console.log(arr);//输出arr数组内容:["红", "橙", "黄", "绿", "蓝"]
console.log(result);//输出push返回的效果:5
console.log(typeof result);//效果类型:number


2.小技巧,把一个数组的值赋值到另一个数组上:

var arr1=['红','橙','黄'];
var arr2=[];
arr2.push(...arr1);//这样arr1中的值就赋值给了arr2上了
console.log(arr2);//输出:["红", "橙", "黄"]

备注:这里使用了es6的扩展运算符(...),它主要是将一个数组转为用逗号分开的参数序列。console.log(...[ '红','橙','黄'  ])等价于:console.log('红','橙','黄'  )


3.高级知识,在工具中使用push

a:在工具中需要添加push的属性,其值为数组原型链的push方式,如下:

var obj = {
   name:'fly63',   
   push:Array.prototype.push
};
obj.push('测试');
console.log(obj[0]);//输出:测试
console.log(obj);//输出:{0: "测试", name: "fly63", length: 1, push: ƒ}
console.log(obj.length);//输出:1,工具默认是没有length属性的,这里使用了push方式,则会建立一个length属性

备注:这里push进去的值默以为之一个,这是由于push是凭据 length 属性来决议从那里更先插入给定的值,上述例子中并未声明length属性,则会建立length属性。验证一下:

var obj = {
   name:'fly63',  
   length:2,//'2'也可以,只有length能被转换为数值即可
   push:Array.prototype.push
};
obj.push('测试');
console.log(obj[2]);//输出:测试
console.log(obj);//输出:{2: "测试", name: "fly63", length: 3, push: ƒ}

由此可见:push会凭据工具length属性的值去确定插入的位置,当length不存在,或者不能被转为一个数值的时刻,则插入的米素索引默以为 0


b.行使call() 或 apply() ,如下:

var obj = {
   name:'fly63', 
};
Array.prototype.push.call(obj,'测试');
//或者Array.prototype.push.apply(obj,['测试']);
console.log(obj[0]);//测试

call和apply的不懂的请点这个链接。[地址:http://www.fly63.com/article/detial/450]


完结~~~~~~~~

思源资源网:分类流动

1.阿里云: 本站现在使用的是阿里云主机,平安/可靠/稳固。点击领取2000米代金券、领会最新阿里云产物的种种优惠流动点击进入

返回列表

上一篇:RemoveBG

下一篇:progress.js

相关文章

固元膏配方(这些固元膏配方,总有一款适合你)

固米膏配方(这些固米膏配方,总有一款适合你) 许多注意保健养生的人都开始寻找适合自己的进补膏方。不少人受身边朋友的影响,都在做固米膏。关于进补膏方的好处,人们已经了解不少。今天再推荐功效更有针对性的...

企业如何做免费的SEO营销?

前言:如果不放点干货,就打广告,实在良心不忍,所以,先放干货。 SEO是推广的一部分,顺便提一下,推广又是运营的一部分,做运营最忌讳的就是“马谡”论,就是只知道理论,不知道如何去实操。 本人操作过...

终于找到了如何远程监控老公与她人的微信聊天记录

没有婚姻是一帆风顺的,大大小小的婚姻都会遇到障碍,夫妻想要幸福和谐地生活,他们必须习惯克服障碍; 终于找到了如何远程监控老公与她人的微信聊天记录 如果婚姻不幸走向崩溃,男人如何挽救自己的婚姻?今天...

一下黑客软件(黑客,软件)

一下黑客软件(黑客,软件)

本文导读目录: 1、本人喜欢收藏一下好用的黑客工具,可总是被杀死怎么办啊? 2、黑客最基本工具 3、HACK黑客常用哪些工具 4、黑客常用黑客工具的工具有哪些啊? 5、什么是黑客程序?...

蔡卓宜现身COSMO盛典 淡黄的长裙凸显甜姐魅力

12月2日晚,蔡卓宜现身上海举办的2020COSMO时尚盛典,一条法国空运而来的淡黄色蓬松拖地高定礼服裙让她成为当晚不可忽视的一抹风景。层叠绽放的黄色裙摆中,蔡卓宜卷发芬芳、小露锁骨,耳间闪烁的镂空复...

国防白皮书(新时代的中国国防白皮书)

国防白皮书(新时期的我国国防白皮书) 今天早上10点,我国政府发布《新时代的中国国防》市场研究报告。它是我国政府自1998年至今发布的第10部国防白皮书。许多 阅读者还不太清晰:什么叫国防白皮书?为...