数组定义:数组(array)是一种数据类型,它包含或者存储了编码的值,每个编码的值称作该数组的一个元素(element), 每个元素的编码被称作为下标(index)。

JavaScript一维数组创建

1. 使用new Array()来创建

用数组对象的构造函数Array(),用new操作符进行实例化数组对象。

创建一个空数组

var arr = new Array();
console.log(arr.length); //

明确指定数组的前n位元素

var arr = new Array("1","2","3","a","b");
console.log(arr.length); //

创建一个大小为n的数组,数组中的每个元素值为undefined

var arr = new Array(10);
console.log(arr.length); //
console.log(arr[0]);     //undefined

传递给构造函数的参数为负数、零、字母或字符时的情况

var arr = new Array(-1);  //RangeError: Invalid array length
console.log(arr.length); var arr = new Array(0);
console.log(arr.length);  // var arr = new Array(a);   //ReferenceError: a is not defined
console.log(arr.length); var arr = new Array('a');
console.log("arr[0] is " + arr[0] + " and arr length is " + arr.length); //arr[0] is a and arr length is 1

2. 使用数组直接量方式创建

我们知道将字符串文本放入引号之间可以创建字符串直接量,那创建数组直接量,只需要将逗号分割的值列表放入方括号(又称为中括号)中。

var arr = ["a","b","c"];
console.log(arr.length); //

JavaScript是一种无类型的语言,所以一个数组元素可具有任意的数据类型,同一数组的不同元素也可以具有不同的数据类型

var arr = [1,"a",true,[false,"ee","11"],{id:1,name:"ting"}];
console.log(arr.length); //
console.log(arr[3]);     //[false,"ee","11"]

数组元素的读取和写,通过中括号操作。

var arr = new Array(1,2,3,4);
console.log(arr[0]); //
arr[2] = "a";
console.log(arr)     //[1, 2, "a", 4] 

数组是有下标的,其范围是大于等于0,小于232-1(4294967296-1)。如果超出这个范围,JavaScript会将其自动转换成字符串。

var arr = new Array();
arr[4294967296] = 1;
console.log(arr.length); //
console.log(arr);        //[4294967296: 1] 

JavaScript数组中的数组元素是稀疏的,意味着数组下标不会落在一个连续的范围,只有真正存储在数组中的元素才能够分配到内存,其余均不会占用内存。

var arr = new Array();
arr[0] = "a";
arr[1000] = "1000";
console.log(arr.length); //
console.log(arr[999]);   //undefined

数组的长度,length属性获得。数组的最大下标必须小于232-1,因此数组的最大长度是232-1。

JavaScript二维数组创建

方法一:

var a = new Array();
a[0] = new Array('a', 'b');
a[1] = new Array(1, 2);
console.log(a[0][1]); //b
console.log(a[1][1]); //

方法二:

var a = new Array(3); //定义维数
a[0] = new Array('a', 'b', 'c');
a[1] = new Array('d', 'e');
a[2] = new Array('f', 'g');
for (var e in a) console.log(a[e]);
/*["a", "b", "c"]
["d", "e"]
["f", "g"]*/

方法三:

var arr = new Array([1, 2, 3], [4, 5, 6], [7, 8, 9, 10]);
for (var e in arr) console.log(arr[e]);
/*
[1, 2, 3]
[4, 5, 6]
[7, 8, 9, 10]
*/

方法四:

var res = new Array(new Array("1", "1111"),new Array("2", "2222"), new Array("3", "3333"),new Array("4", "4444"));
for (var i = 0; i < res.length; i++) {
    alert(res[i][0] + "|" + res[i][1]);
}

时间:2014-10-21

地点:合肥

引用:http://www.xiaoxiaozi.com/2009/06/29/1020/

http://blog.163.com/tarcy_tw/blog/static/317235320110451628286/

JavaScript 数组的创建的更多相关文章

  1. javascript数组操作(创建、元素删除、数组的拷贝)

    这篇文章主要介绍了javascript数组操作,包括创建.元素的访问.元素删除.数组的拷贝等操作,还有其它示例,需要的朋友可以参考下 1.数组的创建 复制代码 代码如下: var arrayObj = ...

  2. JavaScript基础04——数组的创建及方法

    数组的概念及定义 数组的概念:         一组数据,数据的组和         哪些数据的组和,只要是数据(所有数据),就可以放在数组中 数组的意义:         可以同时操作多个数据 数组 ...

  3. Javascript数组操作

    使用JS也算有段时日,然对于数组的使用,总局限于很初级水平,且每每使用总要查下API,或者写个小Demo测试下才算放心,一来二去,浪费不少时间:思虑下,堪能如此继续之?当狠心深学下方是正道. 原文链接 ...

  4. JavaScript权威设计--JavaScript数组(简要学习笔记九)

    1.数组的创建 如: var a=[1.1,null,"a"]; var b=[1, ,3]; //中间的那个元素是undefined var c=[ , , ] 这里c.leng ...

  5. Javascript数组操作(转)

    1.数组的创建 var arrayObj = new Array(); //创建一个数组 var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限, ...

  6. JavaScript 数组

    JavaScript 数组 简介:数组是值的有序集合,JavaScript在同一个数组中可以存放多种类型的元素,而且是长度也是可以动态调整的,可以随着数据增加或减少自动对数组长度做更改. 一:创建数组 ...

  7. JavaScript 数组详解

    在程序语言中数组的重要性不言而喻,JavaScript中数组也是最常使用的对象之一,数组是值的有序集合,由于弱类型的原因,JavaScript中数组十分灵活.强大,不像是Java等强类型高级语言数组只 ...

  8. 什么才是正确的javascript数组检测方式

    前面的话 对于确定某个对象是不是数组,一直是数组的一个经典问题.本文专门将该问题择出来,介绍什么才是正确的javascript数组检测方式 typeof 首先,使用最常用的类型检测工具——typeof ...

  9. 【原】javascript数组操作

    继续我的第二遍<javascript高级程序设计第三版>,今天要做的笔记是array 一.数组的操作 1.数组的创建: var colors= new Array(); //创建一个数组 ...

随机推荐

  1. mysql中and和or

    and的优先级高于or,所以一个sql语句中如果and和or同时出现,则or要加括号

  2. Spark分析笔记

    前言 第一章 Spark简介 本章将对Spark做一个介绍,以及它的一些基本概念 Spark是什么? Spark生态系统BDAS Spark架构 Spark分布式与单机多核架构的异同 Spark的企业 ...

  3. 【前端】Web前端学习笔记【1】

    ... [2015.12.02-2016.02.22]期间的学习笔记. 相关博客: Web前端学习笔记[2] 1. JS中的: (1)continue 语句 (带有或不带标签引用)只能用在循环中. ( ...

  4. iOS及Mac开源项目和学习资料【超级全面】

    UI 下拉刷新 EGOTableViewPullRefresh – 最早的下拉刷新控件. SVPullToRefresh – 下拉刷新控件. MJRefresh – 仅需一行代码就可以为UITable ...

  5. Hibernate的关联映射——双向1-N关联

    Hibernate的关联映射--双向1-N关联 对于1-N的关联,Hibernate推荐使用双向关联,而且不要让1的一端控制关联关系,而是用N的一端控制关联关系.双线的1-N关联和N-1关联是两种相同 ...

  6. 【转载】C++ 与“类”有关的注意事项总结(十二):按成员初始化 与 按成员赋值

    原文:C++ 与"类"有关的注意事项总结(十二):按成员初始化 与 按成员赋值 一.按成员初始化(与构造函数和拷贝构造函数有关) 用一个类对象初始化另一个类对象,比如: Accou ...

  7. Linq排序,获取前5条数据

    _dic = _dic.OrderByDescending(x => x.Value).ToDictionary(x=>x.Key,x=>x.Value); var Num = _d ...

  8. iOS开发数据库篇—SQLite的应用

    iOS开发数据库篇—SQLite的应用 一.简单说明 在iOS中使用SQLite3,首先要添加库文件libsqlite3.dylib和导入主头文件. 导入头文件,可以使用库中的函数(是纯C语言的) 二 ...

  9. Windows Internals学习笔记(六)Windows关键系统组件

    参考资料: 1. <Windows Internals> 2. Dependency Walker 3. Ntoskrnl.exe 4. Livekd的使用 5. WinDbg的使用(一) ...

  10. Windows2012安装IIS和FTP

    Windows2012安装IIS和FTP  1.打开Windows 2012的服务器管理器,选择 管理→添加角色和功能  2.进入 添加角色和功能向导,选择 “Web服务器(IIS)” 3.根据情况选 ...