javascript中new Array()和var arr=[]用法区别


Posted in Javascript onDecember 01, 2017

大家在学习javascript中对于数组函数new Array()和var arr=[]很多朋友不知道如何区别,也不知道用法,下面看看我们总结的。

var arr=[]

这是一种字面量定义数组的方法

var arr=new Array()

这是调用数组构造函数生成的数组

上面的2种定义数组的方法到底一样不一样

目前我们大致的认同是下面这样的

用new 关键字去内存开辟一个存储地址比较耗资源,耗内存.

而字面量方式直接在内存开辟一个存储字段相对简单,不耗资源.

我们首先不去否定上面的结论对不对.

首先从功能上来说 var =arr=[] 和 var arr= new Array() 是一样的.

然后我们用一段代码来验证一下

var startTime=new Date().getTime();
var test1=[];
var test2=[];
for(var i=0;i<1000000;i++){
  //test1[i]={};
  test2[i]=new Object();
}

var endTime=new Date().getTime();
console.log('输出耗时:',endTime-startTime);

上面 test1 和 test2 2个数组中每个元素都是一个数组,可以依次注释任意一行代码,我大概测试10多次以上

结果

36**
36**

上面的2个耗时都是 3600 秒左右,忽上忽下,没有丝毫大的差距

我的运行话就 MacBook Air (13-inch, Mid 2013) ,处理器:1.3 GHz Intel Core i5 , 内存: 4 GB 1600 MHz DDR3 , JS Runner 工具

所以姑且认为上面的2种方法差异不大.

[ ]和new Array()在语法上唯一的区别是new Array()可以直接设置数组的长度

new Array() 在构造数组的时候有下面几种方法

var arr = new Array();
var arr = new Array(8);
var arr = new Array("c", "d", “e”);
字面量方式
var d = ["111", "222", "333"];

所以在性能上这2个方法没有太大差距,只是一种使用习惯,字面量更加直接了当.

退一步讲,如果我用 var arr=[‘111','222','333']; 定义一个数组的时候,难道它没有通过构造函数在内存中开辟一个存放地址吗?

js中数组Array的一些常用方法总结

var list = new Array()是我们在js中常常写到的代码,今天就总结哈Array的对象具有哪些方法。

list[0] = 0;

list[1] = 1;

list[2] = 2;

或者这样声明:var list = [0,1,2]

1 shift()t:删除数组的第一个元素,返回删除的值。这里是0

2 unshift(3,4):把参数加载数组的前面,返回数组的长度。现在list:中是3,4,0,1,2

3pop():删除数组的最后一个元素,返回删除的值。这里是2.

4push(3):将参数加载到数组的最后,返回数组的长度,现在List中时:0,1,2,3

5concat(3,4):把两个数组拼接起来。

6splice(start,deleteCount,val1,val2,...):从start位置开始删除deleteCount项,并从该位置起插入val1,val2,...

reverse:将数组反序
var a = [1,2,3,4,5];
var b = a.reverse(); //a:[5,4,3,2,1] b:[5,4,3,2,1]

sort(orderfunction):按指定的参数对数组进行排序
var a = [1,2,3,4,5];
var b = a.sort(); //a:[1,2,3,4,5] b:[1,2,3,4,5]

slice(start,end):返回从原数组中指定开始下标到结束下标之间的项组成的新数组
var a = [1,2,3,4,5];
var b = a.slice(2,5); //a:[1,2,3,4,5] b:[3,4,5]

join(separator):将数组的元素组起一个字符串,以separator为分隔符,省略的话则用默认用逗号为分隔符
var a = [1,2,3,4,5];
var b = a.join("|"); //a:[1,2,3,4,5] b:"1|2|3|4|5"

Javascript 相关文章推荐
通过JavaScript控制字体大小的代码
Oct 04 Javascript
javascript获取ckeditor编辑器的值(实现代码)
Nov 18 Javascript
获取select元素被选中的文本内容的js代码
Jan 29 Javascript
JavaScript声明变量名的语法规则
Jul 10 Javascript
jquery制作属于自己的select自定义样式
Nov 23 Javascript
JS递归遍历对象获得Value值方法技巧
Jun 14 Javascript
js实现简单的获取验证码按钮效果
Mar 03 Javascript
第一次记录Bootstrap table学习笔记(1)
May 18 Javascript
基于JavaScript实现五子棋游戏
Aug 26 Javascript
JavaScript树的深度优先遍历和广度优先遍历算法示例
Jul 30 Javascript
详解 微信小程序开发框架(MINA)
May 17 Javascript
详解如何修改 node_modules 里的文件
May 22 Javascript
JS笛卡尔积算法与多重数组笛卡尔积实现方法示例
Dec 01 #Javascript
利用JS测试目标网站的打开响应速度
Dec 01 #Javascript
Vue-Access-Control 前端用户权限控制解决方案
Dec 01 #Javascript
javascript按顺序加载运行js方法
Dec 01 #Javascript
AngularJS2 与 D3.js集成实现自定义可视化的方法
Dec 01 #Javascript
javascript Function函数理解与实战
Dec 01 #Javascript
React Native react-navigation 导航使用详解
Dec 01 #Javascript
You might like
一个简单的域名注册情况查询程序
2006/10/09 PHP
一些常用的php简单命令代码集锦
2007/09/24 PHP
PHP操作MySQL事务实例
2014/11/05 PHP
php实现留言板功能(会话控制)
2017/05/23 PHP
解决thinkPHP 5 nginx 部署时,只跳转首页的问题
2019/10/16 PHP
JS高级笔记
2011/07/13 Javascript
Jqgrid设置全选(选择)及获取选择行的值示例代码
2013/12/28 Javascript
jQuery:delegate中select()不起作用的解决方法(实例讲解)
2014/01/26 Javascript
jquery live()调用不存在的解决方法
2014/02/26 Javascript
用JavaScript实现对话框的教程
2015/06/04 Javascript
使用AmplifyJS组件配合JavaScript进行编程的指南
2015/07/28 Javascript
javascript实现选中复选框后相关输入框变灰不可用的方法
2015/08/11 Javascript
学习JavaScript设计模式之享元模式
2016/01/18 Javascript
超简单的Vue.js环境搭建教程
2017/03/17 Javascript
在vue中使用vue-echarts-v3的实例代码
2018/09/13 Javascript
vue项目上传Github预览的实现示例
2018/11/06 Javascript
vue 的 solt 子组件过滤过程解析
2019/09/07 Javascript
vue 保留两位小数 不能直接用toFixed(2) 的解决
2020/08/07 Javascript
关于vue属性使用和不使用冒号的区别说明
2020/10/22 Javascript
echarts饼图各个板块之间的空隙如何实现
2020/12/01 Javascript
Python的Flask开发框架简单上手笔记
2015/11/16 Python
PythonWeb项目Django部署在Ubuntu18.04腾讯云主机上
2019/04/01 Python
python groupby 函数 as_index详解
2019/12/16 Python
python opencv实现信用卡的数字识别
2020/01/12 Python
基于python实现数组格式参数加密计算
2020/04/21 Python
VICHY薇姿美国官方网站:欧洲药房第一的抗衰老品牌
2017/11/22 全球购物
结婚喜宴家长答谢词
2014/01/15 职场文书
会计专业自我评价
2014/02/12 职场文书
保护环境建议书300字
2014/05/13 职场文书
建筑专业毕业生自荐信
2014/05/25 职场文书
新文化运动的口号
2014/06/21 职场文书
检讨书格式
2015/01/23 职场文书
大学生简历自我评价2015
2015/03/03 职场文书
2015年公司行政后勤工作总结
2015/05/20 职场文书
小学六年级班主任工作经验交流材料
2015/11/02 职场文书
创业计划书之网吧
2019/10/10 职场文书