javascript笔记整理(数组)
数组是一个可以存储一组或是一系列相关数据的容器。
一、为什么要使用数组。
a.为了解决大量相关数据的存储和使用的问题。
b.模拟真是的世界。
二、如何创建数组
A.通过对象的方式来创建——var a=new Array();
赋值方式:
1.直接赋值——var a=new Array(元素1,元素2,元素3,元素4,........)
var a=new Array(数值)
如果只有一个元素,并且这个元素是数值类型的,那么他就是指定数组的长度并且他的值都是undefined
var a=new Array(3);
alert(a.length); 结果:3 var a=new Array(3,2);
alert(a.length); 结果:2
2.声明以后再赋值
var a=new Array();
a[0]=1;
a[2]=2;
a[0]=3;
B.隐形声明的方式——var a=[];
赋值方式:
1.直接赋值:
var a=[1,2,3,4];
2.声明以后再赋值
var a=[];
a[0]=1;
a[1]=2;
a[2]=3;
javascript数组可以存储任何类型的值
var a=new Array(3,true,'abc');
三、访问数组的元素(通过数组的(中括号)下标访问)
数组下标从0开始,他的最大值,是length属性-1
四、遍历数组的元素
//for循环 效率最优
var a=[1,2,3];
for(var i=0,max=a.length;i<max;i++){
alert(a[i]);
} //while();
var i=0;
while(i<a.length){
alert(a[i]);
i++;
} //for in(只能从第一个开始有几个数组执行几次) 效率慢
for(var i in a){
alert(a[i]);
}
五、数组的分类
A.下标的类型
1.下标是数字类型的(索引数组)
var a=[];
a[0]=1;
a[1]=2;
a[2]=3;
2.下标是字符串类型的(关联数组)
var a=[];
a['name']=2;
alert(a.name); 弹出:2
alert(a[''name']); 弹出:2
alert(a); 弹出:空
B.维度来分类
A.一维数组
var a=[1,2,3];
B.二维数组
var arr=[[1,2,3],[4,5,6]];
alert(arr[1][1])
注意:
//可以存储任何类型的数据
var a=[1,'name',true,'abc']; //只支持一维数组。
var a=[];
a[0][0]=2
alert(a[0][0]); 报错 var a=[[]];
a[0][0]=2
alert(a[0][0]); 弹出:2 //长度可变。
var a=[1,2];
alert(a.length); 结果:2
a[4]=2;
alert(a.length); 结果:5 //如果是索引数组,下标始终从0开始,如果指定了长度,但是没有赋值,他的值就会自动赋值为undefined
var a=[];
a[3]=2;
alert(a[2]); 结果:undefined
alert(a.length); 结果:4
javascript笔记整理(数组)的更多相关文章
- javascript笔记整理(数组对象)
1.属性 a.length--设置或返回数组元素的数目 var a=[1,2,3,45,5]; alert(a.length=6) 结果:6 alert(a[5]) 结果:undefined b.co ...
- JavaScript笔记整理
整理一篇工作中的JavaScript脚本笔记,不定时更新,笔记来自网上资料或者自己经验归纳. (1) 获取Url绝对路径 function getUrlRelativePath() { var url ...
- javascript笔记整理(对象遍历封装继承)
一.javascript对象遍历 1.javascript属性访问 对象.属性名 对象['属性名'] var obj={name:'chen',red:function(){ alert(1);ret ...
- javascript笔记整理(回调、递归、内置顶层函数)
1.回调函数(通过函数的指针来调用函数,把一个函数的指针做为另一个函数的参数,当调用这个参数的时候,这个函数就叫做回调函数) a.通过指针来调用 function aa(a,b,fun){ retur ...
- JavaScript笔记之数组 keyword(存储和释放&堆栈 & 按值 引用)
1.数组创建及初始化 var obj=new Array(); var arr=[]; 可以延伸为长度一定的,字面量定义数组 2.堆栈 按值传递 引用类型 数组是引用类型,不是值传递, 栈:系桶自动分 ...
- javascript常用方法整理--数组篇
1. arrayObject.slice(start,end) 从已有的数组中返回选定的元素 参数 描述 start 必需.规定从何处开始选取.如果是负数,那么它规定从数组尾部开始算起的位置.也就是说 ...
- javascript笔记整理(正则)
RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具 var re=/e/; var re=new RegExp('e'); 正则表达式的 String 对象的方法 1.search- ...
- javascript笔记整理(事件)
一.事件驱动 1.事件javascript侦测到的用户的操作或是页面的一些行为(怎么发生的) 2.事件源引发事件的元素(发生在谁的身上) 3.事件处理程序对事件处理的程序或是函数 (发生了什么事) 二 ...
- javascript笔记整理(字符串对象)
一.属性 1.length——字符串的长度(不区分中英文) var a="chen陈"; alert(a.length); //结果:5 2.constructor——对象的构造函 ...
随机推荐
- Cobbler自动化部署
一:PXE.Kickstart与Cobbler的概念: PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的技术,需要网卡的硬件支持,工作于C/S的 ...
- Eclipse中DTD验证导致无法进行代码提示的问题(转)
eclipse的xml插件进行dtd验证的时候由于找不到dtd或请求主机相应超时,会出现黄色的警告 The file cannot be validated as the host "www ...
- 枚举子集的3种方式 -- C++描述
要求: 给定一个集合,枚举所有可能的子集.此处的集合是不包含重复元素的. Method0: 增量构造法 思路:每次选取一个元素至集合中,为了避免枚举重复的集合,此处要采用定序技巧 -- 除了第一个元素 ...
- Uva 10935 Throwing cards away I
题目意思:有N张牌,标号为1~N,且牌以叠好,从上到小就是标号1-N的牌,只要牌堆数量大于等于2的时候,就采取如下操作:将最上面的牌扔掉(即离开牌堆).刚才那张牌离开后,再将新的最上面的牌放置于牌堆最 ...
- Swift--基本数据类型(一)
不像更多语言中,X不要求你写一个分号(;)在你的代码中的每一个语句后,尽管能够这样做.然而,假设你想在一行中写入多个单独的语句分号是必需的: . 1 let cat = "" ...
- ceph之Placement Group
预定义PG_NUM 新建一个存储池命令:ceph osd pool set {pool-name} pg_num 选择一个pg_num的值是强制性的,这是因为该值不能被自动计算出来,以下是一些常用值 ...
- Automatic Preferred Max Layout Width is not available on iOS versions prior to 8.0
今天在真机调试低版本系统的时候出现如题类似Layout Max Width在ios 8 之前不适用的问题, 初步估计是autolayout 所导致的 查找资料解决方法如下: 将label下Preffe ...
- Xcode5 创建模板和UIView 关联XIB
转自:http://www.cnblogs.com/china-ldw/p/3533896.html 在做ios应用开发的过程,难免遇到要创建 子view 和 自定义view的时候,归根到底,我们需要 ...
- [NOIP 2005]-- 篝火晚会
额~~,对这组题感兴趣的具体的解题报告可以戳戳这里:http://wenku.baidu.com/view/878beb64783e0912a2162aa7.html?qq-pf-to=pcqq.c2 ...
- instanceof 变量是否属于某一类 class 的实例
<?phpclass MyClass{} class NotMyClass{}$a = new MyClass;$b = new NotMyClass;var_dump($a instanceo ...