第七章 javascript的数组笔记摘要

数组:值的有序集合。
元素:数组中的每一个值
索引:每个元素在数组中的位置,用基于0的32位数值表示

1.javascript数组是动态的。根据需要会增长或者缩减。初始创建时无需声明一个固定大小,数组大小变化无需重新分配空间。
2.可能是稀疏的,索引不一定连续

创建数组

数组直接量创建

var misc=[1.1 ,ture, ,"a",{x:1},[2,3]];//值为常量,省略值为undefined,可以包含其他对象直接量或者数组直接量
var table=[base,base+1,base+2];//值为任意表达式

调用构造函数Array()创建

var a=new Array();//无参,空数组
var a=new Array(10);//指定长度,预分配一个数组空间,但没有存储值,索引甚至都没定义
var a=new Array(1,2,3,"test1,test2");//显式指定元素

数组元素的读和写

var a=["world"];
var v=a[0];//读出"world"
a[1]=hello;//写入得a=["world","hello"]

1.数组索引,是对象属性名的一种特殊类型。
2.意味着javascript没有“越界”的说法,查询属性不存在时,不会报错,只会得到undefined
3.因为数组是对象,所以可以从原型继承元素。可以定义元素的getter和setter方法

稀疏矩阵

创建系数矩阵
1.Array()创建

a=new Array(5);
a[1000]=1;//通过赋值添加一个元素,length为1001

2.delete
元素undefined和不存在的区别

var a=[,,,];//[undefined,undefined,undefined]
var b=new Array(3);//空元素数组
0 in a;//true
0 in b;//false

数组长度

1.数组索引i大于等于数组长度,length就设置为i+1
2.设置length小于当前数组长度,相当于删除length后的元素

数组方法

见第二章Array()对象总结

数组类型

Array.isArray([])//true
Array.isArray({})//false
//在ECMScript3中的类似isArray()函数的代码
var isArray=Function.isArray||function(o){
    return typeof==="object"&&
    Object.prototype.toString.call(o)==="[object Array]";
}

类数组对象

var a={};
var i=0;
while(i<10){
    a[i]=i*i;
    i++;
}
a.length=i;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值