JavaScript中定义数组的两种主要方式(new Array()和[]方式

  1. new Array()

可以用像JAVA的那种写法的方式定义,如

var arr = new Array()

这样定义了一个空数组

可以填写一个数字作为构造时的参数,比如

var arr = new Array(5)

在控制台可以看见这个数组的内容是

[undefined × 5]

这是一个"稀疏数组",通过直接改变数组length属性得到的元素数量少于数组的length的数组。

这种数组可以用

for(var i=0;i<arr.length;i++){

}

这种方式遍历,无法用

for(var e in arr){

}

的方式和

arr.forEach(function(e,i){

})

的方式遍历,可能会带来一些问题,应该避免稀疏数组的创建,所以不要使用

new Array(5)

这种创建方式,也不要直接改变数组的length属性。

③也可以用

var arr = new Array(1,2,3)

这种方式定义一个正常的数组

  1. []

构造器的方式定义数组了解了解就行,平时应该避免使用。

尽量使用中括号的方式定义数组,如

var arr=[1,2,3]

用这种方式可以得到一个正常的一个单位的数组,而不是所谓的“稀疏数组”

var arr=[1]

应该用哪种方式

多于一个初始元素时,2种方式定义的效果完全一样。

中括号方式定义有以下好处

程序更短,更易读;

初始元素为1个时也能正常定义。

所以大部分情况下应该使用中括号方式定义数组。

new Array(length)这种方式在某些特殊场合可以用到,比如可以很简洁的用一行得到一个0~99的范围的数组:

new Array(100).fill().map((e,i)=>i)

如果不用new Array(length)这种方式,程序就会更长一些。

var arr = [];

for(var i=0;i<100;i++){

arr.push(i);

}

长一些倒没什么,但更关键的是这样它就不是表达式了,而变成语句,在某些需要用表达式的场合会更不方便。

1.JavaScript中定义数组的两种主要方式相关推荐

  1. Java中定义字符串的两种常见方式、使用==和equals()比较字符串

    在讲使用==和equals()比较字符串之前,我们首先要讲定义字符串的两种常见方式,一种是定义一个常量,即直接定义字符串,一种是通过new关键字定义一个变量,即使用String类定义字符串,如下图: ...

  2. js中定义数组的两种方式

    js中定义数组: 注意事项: 1.在js中定义数组,不用担心数组角标越界的问题,可以自动扩容. 2.在js中,数组是可以定义任何数据类型的. 1.指定数组长度 运行结果: 2.简写方式:

  3. javascript中清空数组的两种方式

    1,length赋0 var a=new Array(); a.length=0; 2 [] var a=new Array(); a=[];

  4. application.yml中定义数组的两种方式

    @Data @Component @ConfigurationProperties(prefix = "send.feishu") public class YmlConfig { ...

  5. javaScript中创建数组的3种方式

    JS数组定义及详解 javascript如何定义数组? 直接上代码和截图 //javaScript中创建数组的3种方式 //方式1 var names = ["令狐冲", &quo ...

  6. JavaScript 中清空数组的几种方法

    目录 Array.prototype.splice() 将 length 设置为 0 分配新的空数组 length = 0和 Array = [] 之间的差异? JavaScript 中清空数组的几种 ...

  7. java 数组合并_拼接_详解Java合并数组的两种实现方式

    详解Java合并数组的两种实现方式 发布于 2020-7-27| 复制链接 摘记: 最近在写代码时遇到了需要合并两个数组的需求,突然发现以前没用过,于是研究了一下合并数组的方式,总结如下.1.Syst ...

  8. 初始化一个java空数组_Java 数组的两种初始化方式

    一.数组 1.数组中存储元素的类型是统一的,每一个元素在内存中所占用的空间大小是相同的,知道数组的首元素的内存地址,要查找的元素只要知道下标,就可以快速的计算出偏移量,通过首元素内存地址加上偏移量,就 ...

  9. java map遍历_Java中Map集合的两种遍历方式

    Java中的map遍历有多种方法,从最早的Iterator,到java5支持的foreach,再到java8 Lambda,让我们一起来看下Java中Map集合的两种遍历方式! 关于遍历Map集合的几 ...

最新文章

  1. CYQ学习主要摘要4
  2. 几道题目理解JavaScript作用域、作用域链、预解析规则、表达式
  3. 2015年10月15日作业
  4. cad把图形切成两部分_0基础7天速成CAD!设计大师私藏的300套练习图,学完就可以找工作...
  5. grep -A :显示匹配行和之后的几行
  6. 恒大汽车:仍在就出售新能源汽车生活项目等资产进行磋商
  7. [转]SQL:JOIN用法
  8. mysql缺失值处理方法,插值MySQL表中的缺失值
  9. X64_Xcelera-CL_PX4采集卡测试记录
  10. 使用IOCP需要注意的一些问题~~(不断补充)
  11. 关于单细胞批次矫正那些事(二) KBET 用于单细胞批次矫正结果的评估
  12. web本地开发环境集成工具:​​​​MAMP Pro
  13. 关于XSS的一些介绍
  14. 微信小程序开发:学习笔记[5]——JavaScript脚本
  15. python找不到tushare_python stock数据包tushare
  16. 用cmd命令行下载github中的工程文件
  17. css基础知识 -- 颜色渐变
  18. Oracle转PostgreSQL
  19. js自动生成手机扫描二维码就可以实现自动下载apk的二维码
  20. 学习大数据的最佳年龄,多少岁学大数据合适

热门文章

  1. ChatGPT 教程——关于如何使用 OpenAI ChatGPT 的指南
  2. php addslashes 数组,PHP函数漏洞审计之addslashes函数-
  3. LiquiBase中文学习指南
  4. 我的世界java版种子掠夺者,《我的世界》1.14最适合新手的全能种子 你想要的冒险这里都有...
  5. 微软ChatGPT技术的底层支撑——GPU
  6. C语言实现进程同步与互斥
  7. HIVE MAP 函数使用
  8. 你知道Laravel ORM 中的骚操作吗
  9. multipart/form-data遇上IOException:Stream ended unexpectedly
  10. spring mybatis 配置多数据源