JS高程5.引用类型(2)Array类型
Array类型:
ECMAScript数组的每一项可以保存任何类型的数据,数组的大小是可以动态调整的。
创建数组的基本方式:
(1)使用Array构造函数
var color=new Array();
注意:
给构造函数传递一个值时,如果传递的是数值,则会按照该数值创建包含给定项数的数组;如果传递的是其他类型的参数,则会创建包含那个值的只有一项的数组。
eg:
var color=new Array(3);//创建一个包含3项的数组
var name=new Array("Mary");//创建包含一项,即字符串“Mary”的数组
使用Array构造函数也可以省略new操作符:
eg:
var name=Array("Mary");//创建包含一项,即字符串“Mary”的数组
alert(name);

(2)使用数组字面量表示法:
eg:
var color=["red","blue","green"];
var names=[];//创建一个空数组
var values=[1,2,];//不要这样,会创建包含2项或是3项的数组
var opyions=[,,,,,];//不要这样,会创建包含5项或是6项的数组
注意:
(1)如上例子中的第三行,在IE中,values会成为一个包含3个项且每一项的值分别是1,2和undefined的数组,在其他浏览器中,values会成为一个包含2项的数组,值分别是1和2。原因是IE8及之前的版本中的ECMAScript实现数组字面量方面存在bug。
(2)与对象一样,使用数组字面量表示法,也不会调用Array构造函数。(Firefox3及更早的版本除外。)
(3)在读取和设置的值时,要使用方括号提供相应值的基于0的数值索引。
eg:
var color=["red","blue","green"];
alert(color[0]);//显示第1项
color[2]="black";//修改第3项
color[3]="browm";//新增第4项
(4)数组的项数保存在其length属性中,这个属性始终会返回0或是更大的数,它不是只读的,因此可以通过设置这个属性,从数组的末尾移除项或是向数组中添加项。
eg:
var colors=["red","blue","pink"];
alert(colors.length);//
colors.length=2;
alert(colors[2]);
alert(colors.length);//



(4)可以利用length属性在数组末添加新项:
eg:
var colors=["red"];
colors[colors.length]="black";
colors[colors.length]="pink";
alert(colors.length);//
alert(colors[2]);//pink
由于数组最后一项的索引始终是length,因此下一新项的位置就是length。每当在数组末尾填加一项后,其length属性都自动更新以反应这一变化。
注意:
Javascript使用一个32位整数,保存数组的元素个数。这意味着数组的成员最多只有4294967295个(即2的32次方)。。如果想添加的项数超过这个上限值,就会发生异常,而创建一个初始化大小与这个上限值接近的数组,则可能导致运行时间超长的脚本错误。
JS高程5.引用类型(2)Array类型的更多相关文章
- 《JS高程》引用类型学习笔记
2月圆满的结束了,结束之前是如凤凰般的涅槃.一边上班,一边搞科研的忙碌有点让人透不过气,心会不由得浮躁起来.但是,无论什么事情,只要充满耐心.专心去做,总会朝好的方向发展,心态真的很重要.Anyway ...
- JavaScript引用类型之Array类型一
一.简介 除了Object之外,Array类型恐怕是ECMAScript中最常用的类型了.下面就来分析ECMAScript中的数组与其他语言中的数组的异同性: 1.相同点: (1)他们都是数据的有序列 ...
- JavaScript引用类型之Array类型API详解
Array类型也是ECMASCRIPT中最常见的数据类型,而且数据的每一项可以保存任何类型的数值,而且数组的大小是可以动态调整的,可以随着数据的添加自动增长以容纳新的数据.下面,总结数据的一些常用方法 ...
- 引用类型之Array类型
Array类型 ECMAScript数组与其它语言数组一样,都是数据的有序列表.但是ECMAScript数组的每一项可以保存任何类型的数据.而且,ECMAScript数组是可以动态调整的. 1.创建和 ...
- JS高程5.引用类型(4)Array类型的各类方法
一.转换方法 所有的对象都具有toLocaleString(),toString()和valueOf()方法.调用toString()方法会返回由数组中的每个值的字符串拼接而成的一个以逗号分隔的字符串 ...
- JS高程5.引用类型(3)Array类型-检测数组
1. instanceof操作符(ECMAScript3) 对于一个网页,或者是一个全局作用域而言,使用instanceof操作符来检测数组就可以得到满意的结果. 语法:if(value instan ...
- JS高程5.引用类型(6)Array类型的位置方法,迭代方法,归并方法
一.位置方法 ECMAScript5为数组实例添加了两个位置:indexOf()和 lastIndexOf().这两个方法接收两个参数:要查找的项和(可选的)表示查找起点位置的索引(如在数组[7,8, ...
- JS高程5.引用类型(5)Array类型的操作方法
一.操作方法 1.concat()方法 基于当前数组中的所有项创建一个新数组.具体说,是先创建当前数组的一个副本,然后将接收到的参数添加到这个副本的末尾,最后返回新构建的数组.在没有给concat() ...
- JS高程5.引用类型(1)Object类型
引用类型 在ECMASCript中,引用类型是一种数据结构,将数据和功能组织在一起,引用类型有时候也被称为对象定义,因为它们描述的是一类对象所具有的属性和方法.(注意:尽管ECMAScript从技术上 ...
随机推荐
- Android 扫描条形码(Zxing插件)
使用Android Studio 一.在build.gradle(Module:app)添加代码 下载,调用插件 1 apply plugin: 'com.android.application' ...
- Oracle 11g必须开启的服务及服务详细介绍
转自:http://www.educity.cn/shujuku/404120.html 成功安装Oracle 11g数据库后,你会发现自己电脑运行速度会变慢,配置较低的电脑甚至出现非常卡的状况,通 ...
- jsp富文本图片和数据上传
好记性不如烂笔头,记录一下. 2016的最后一天,以一篇博客结尾迎接新的一年. 此处用的富文本编辑器是wangEditor,一款开源的轻量级的富文本编辑器,这里着重说一下里面的图片上传功能. 服务器端 ...
- 初探java中this的用法
一般this在各类语言中都表示“调用当前函数的对象”,java中也存在这种用法: public class Leaf { int i = 0; Leaf increment(){ i++; retur ...
- Node.js实现RESTful api,express or koa?
文章导读: 一.what's RESTful API 二.Express RESTful API 三.KOA RESTful API 四.express还是koa? 五.参考资料 一.what's R ...
- (转)linux下和云端通讯的例程, ubuntu和openwrt实验成功(一)
一. HTTP请求的数据流总结#上传数据, yeelink的数据流如下POST /v1.0/device/4420/sensor/9089/datapoints HTTP/1.1Host: api. ...
- jQuery选择器中,通配符[id^='code']input[id$='code'][id*='code']
1.选择器 (1)通配符: $("input[id^='code']");//id属性以code开始的所有input标签 $("input[id$='code']&qu ...
- JSON.stringify()与JSON.parse()
JSON.stringify()用于把一个对象解析成字符串,如 var student = { age: 23, name: 'wang' } JSON.stringify(student); 结果: ...
- 《JavaScript 源码分析》之 jquery.unobtrusive-ajax.js
/*! ** Unobtrusive Ajax support library for jQuery ** Copyright (C) Microsoft Corporation. All right ...
- 读书笔记--SQL必知必会19--存储过程
不同的DBMS对存储过程的实现不同,差异巨大,这里不涉及具体的DBMS,仅仅说明存储过程的简单含义. 19.1 存储过程 简单来说,存储过程就是为以后使用而保存的一条或多条SQL语句. 可以将存储过程 ...