一、初识数组

在程序语言中数组有多重要不需要我这个程序媛再复述了,JavaScript中数组也是最常使用的对象之一,数组是值的有序集合,由于弱类型的原因,JavaScript中数组十分灵活,不像Java等强类型高级语言数组只能存放同一类型或其子类型元素,JavaScript在同一个数组中可以存放多种类型的元素,而且是长度也是可以动态调整的,可以随着数据增加或减少自动对数组长度做更改。Javascript不支持多维数组,但是因为数组里面可以包含对象(数组也是一个对象),所以数组可以通过相互嵌套实现类似多维数组的功能。

用js有三四年了,但一直没有深究过js的数组形式。偶尔用用也就是简单的string.split(char)之类的。最近公司的一个项目,用到数组的地方很多,自以为js还可以的wo居然无从下手,霸气外露的狮女怎么可能允许自己手忙脚乱的狼狈模样?我就潜心下来会会它,呵呵。今天还是跟着思维导图走(这个概括的太很好!)。js数组的功能很强大,远比VB,C#强多了!下面就一点一点来看看这个“怪兽”(javascript数组)有多强大……

二、数组的创建

1.创建方式

在JavaScript多种方式创建数组

构造函数

1.空数组:无参构造函数,创建一空数组

var obj = new Array();

2.  指定长度数组:一个数字参数构造函数,指定数组长度(由于数组长度可以动态调整,作用并不大),创建指定长度的数组

var obj = new Array(size);
var obj = new Array(5); //size=5

3.指定元素数组:带有初始化数据的构造函数,创建数组并初始化参数数据

var obj = new Array(e1,e2,e3,……);
var a3=new Array(4,'hello',new Date()); //数组元素类型可以不一致

4.n维数组(n>=1)

单维数组:var obj = {e1, e2, e3,…… ,en};

多维数组:var obj1 = {e1, e2, e3,…… ,en};

var obj2 = {e1, e2, e3,…… ,en};

……

var obj = {obj1, obj2, …… ,objn};

字面量

1.使用方括号,创建空数组,等同于调用无参构造函数

var obj=[];   <=>   var obj = new Array();

2.使用中括号,并传入初始化数据,等同于调用调用带有初始化数据的构造函数

var obj=[10];  <=>   var obj = new Array(10);

注意点

1.在使用构造函数创建数组时如果传入一个数字参数,则会创建一个长度为参数的数组,如果传入多个,则创建一个数组,参数作为初始化数据加到数组中

var a1=new Array(5);
console.log(a1.length);//5
console.log(a1); //[] ,数组是空的
var a2=new Array(5,6);
console.log(a2.length);//2
console.log(a2); //[5,6]

2.但是使用字面量方式,无论传入几个参数,都会把参数当作初始化内容

var a1=[5];
console.log(a1.length);//1
console.log(a1); //[5]
var a2=[5,6];
console.log(a2.length);//2
console.log(a2); //[5,6]

3.使用带初始化参数的方式创建数组的时候,最好最后不要带多余的”,”,在不同的浏览器下对此处理方式不一样

var a1=[1,2,3,];
console.log(a1.length);
console.log(a1);

这段脚本在现代浏览器上运行结果和我们设想一样,长度是3,但是在低版本IE下确实长度为4的数组,最后一条数据是undefined

另外有一个需要再强调一下:

第二种方法创建数组指定了长度,但实际上所有情况下数组都是变长的,也就是说即使指定了长度为5,仍然可以将元素存储在规定长度以外的,这时长度会随之改变。

Javascript数组之创建相关推荐

  1. Javascript数组的创建

    这次讲的是JavaScript数组的创建. 数组也是对象(内建对象),它和我们普通对象功能类似,也是用来存储一些值的.不同的是普通对象 使用字符串作为属性名,而数组是使用数字来作为索引操作元素.索引: ...

  2. JavaScript数组的创建以及常用用法

    首先说明JavaScript和java没有任何关系(JavaScript名字这样命名当年纯属只是为了蹭Java的热度而已,没错它蹭成功了,它现在火得不得了了).一个是弱类型的脚本语言一个是强类型的高级 ...

  3. JavaScript 数组方法 遍历

    JavaScript 数组方法 创建一个数组 Concat()连接两个或更多的数组 并返回结果   join()用指定分隔符分隔数组并转换为字符串 Push()可向数组的末尾添加一个或多个元素,并返回 ...

  4. 创建零填充JavaScript数组的最有效方法?

    在JavaScript中创建任意长度的零填充数组的最有效方法是什么? #1楼 使用对象符号 var x = []; 零填充? 喜欢... var x = [0,0,0,0,0,0]; 充满" ...

  5. JavaScript 数组拼接打印_JavaScript数组_创建数组_一维数组_length(二十三)

    目录: 1.什么是数组 2.创建数组方式 3.一维数组和length 一.什么是数组 数组对象的作用是:使用单独的变量名来存储一系列的值. 通俗理解:如果把声名变量来比做小轿车的话,那么数组就是高铁, ...

  6. Java、JavaScript、C语言数组的创建

    Java 一维数组 类型[] 数组名 = new 类型[长度];//指定数组长度创建数组 类型[] 数组名 = new 类型[]{元素1,-}//创建数组并加入元素,动态创建 类型[] 数组名 = { ...

  7. javascript中如何创建数组-与创建数组的几种方法

    javascript中数组的创建方式有3种,我只学了3种,还有没有其他方法我也不知道哈.... 下面我们来看看 js中创建数组的其中一种方法. //先写一种最常规的的创建JS数组的方法 var arr ...

  8. javascript数组创建

    一. 数组(Array)的基本使用 数组也是对象(内建对象),它和我们普通对象功能类似,也是用于存储一些值的.不同的是普通对象使用字符串作为属性名,而数组是使用数字作为索引操作元素.从0开始的整数就是 ...

  9. [JavaScript] JavaScript数组挖掘,不只是讲数组哟(2)

    课程来源:后盾人 上一篇的内容:[JavaScript] JavaScript数组挖掘,不只是讲数组哟 数组引用类型分析,多维数组,用Array.of为数组创建细节,类型检测与转换,在一个数组后面加一 ...

最新文章

  1. Quartz的Scheduler初始化源码分析
  2. Spring IOC 注入方式
  3. 20155313 2016-2017-2 《Java程序设计》第二周学习总结
  4. 完成GitHub个人主页设计,只需要这三步
  5. python多线程处理数据库_在flask框架下利用Python的threading或thread多线程库如何操作数据库?...
  6. HDU - 6558/概率dp(从后往前推导)
  7. 查找算法——折半查找(JAVA)
  8. phpcms解决(sql数据库数据与页面显示结果)调用的栏目数据条数不一致问题 - 总结篇
  9. LeetCode 80. Remove Duplicates from Sorted Array II
  10. OpenCV-绘制箭头cv::arrowedLine
  11. java 合并两个列表_如何在Java中合并两个列表?
  12. vivado linux使用教程,Vivado2017.4下载|Xilinx Vivado 2017.4 最新版(含使用教程)下载...
  13. 计算机视觉 图像算法工程师 面试问题总结
  14. 华为云influxdb+grafana+ prometheus安装和如何外网访问华为云+java环境安装配置+jmeter安装配置+Jmeter后端监听器+非GUI执行jmeter脚本
  15. HPU算法协会公开课第一期:【基础算法1】(STL 自定义sort 前缀和差分)
  16. 音效算法学习笔记(一)fader 增益调节器
  17. Python基础语法学习6
  18. 【技术分享】Windows10下安装Nvidia显卡驱动及cuda和cudnn
  19. 机器学习中的梯度消失问题vanishing gradient
  20. 使用BadBoy录制JMeter脚本

热门文章

  1. 中小互联网软件公司的骗局--一个小型公司一连串的过家家似的政治斗争(1)
  2. 『Ruby』模块(Module)
  3. 模块module的概念
  4. 【交易技术前沿】海通证券金融云思考与实践(下)
  5. 使用word编辑论文,从正文开始添加页码的设置步骤
  6. 浅谈 Vue3 中的 v-model 和 sync 修饰符
  7. Kettle增量同步数据
  8. C/C++项目:程序员的浪漫——流星雨表白程序教程
  9. 解决git上传文件出错[rejected] master -> master (fetch first) error: failed to push some refs to
  10. 2021年中国产业用纺织品行业经济运行情况及2022年发展展望[图]