JavaScript push() 方式详解

访客4年前黑客文章1197

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

相关文章

上海车牌标书(上海沪牌拍牌官网)

上海车牌标书(上海沪牌拍牌官网) 上海国拍APP再次升级。 本月车牌拍卖在今天(10:30-11:30)举行,个人额度9020辆,与上月基本持平。今年全年警示价为88100米,拍卖系统网址:h...

怎么区分一寸两寸照片(手机怎么裁剪一寸照片)

  证件照片大伙儿一定都采用过,之前的情况下应用证件照片的情况下全是要去照像馆拍一寸、二寸照片,如今绝大部分的系统软件早已适用根据在网上递交证件照片等材料了,因此 只必须有PDF的一寸、二寸证件照片就...

苹果手机截屏在哪里设置

1、打开设置。2、点一下功能。3、挑选触摸。4、点一下轻一点反面。5、点一下轻一点几下。6、挑选手机截图。7、在手机反面轻一点几下就可以手机截图。 知名品牌型号规格:iPhone12 系统软件:IOS...

任性是什么意思(要有任性的资本)

任性是什么意思(要有任性的资本)

任性是什么意思(要有任性的资本)我46岁,未婚。他53岁,离婚七八年了。他是我亲堂哥,因为从小他们在外地,所以我们并不认识。今年春节后我们联系上,并加了微信好友,我觉得他的头像照片很帅。现在他在南方,...

我要找师傅黑客-黑客要学的器械多吗(当黑客必学的器械)

网络黑客如何使用手机软件进攻 检举赌博app步骤(互联往事博app举报) 网络黑客对冲套利是啥 为何我的微信忽然互联网不能用了(iPhone忽然没有网络) 网络黑客新手应当看什么书...

哪里找黑客盗号码-喜德盛黑客700是什么级别(喜德盛黑客680是什么)

网络黑客属于什么程序员智卓云联(智卓手持云台)2018年黑客为什么全部人都要多强制申诉qq成功(qq申诉盗号成功技巧)黑客程序都是用什么编写的教你身份证号加微信(身份证名下的微信号)黑客到底是如何黑电...