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——对象的构造函 ...
随机推荐
- Tomcat中配置自定义404错误页面
404,50x这种错误经常遇到. 如果%CATALINA_HOME%\conf\web.xml和具体应用中都有设置%CATALINA_HOME%\webapps\ROOT\WEB-INF\web.xm ...
- matrix67:kmp算法详解
个人认为KMP是最没有必要讲的东西,因为这个东西网上能找到很多资料.但网上的讲法基本上都涉及到“移动(shift)”.“Next函数”等概念,这非常容易产生误解(至少一年半前我看这些资料学习KMP时就 ...
- imagemagick /tmp/magick-xxxxxxxx
问题 imagemagick在某种场景下会狂写/tmp目录,文件名形如magick-xxxxxxxx, ls -lh查看这些文件达到几百G, du -sh查看则只有几十M 被这个问题折磨了许久,大晚上 ...
- UVA 10057 A mid-summer night's dream. 仲夏夜之梦 求中位数
题意:求中位数,以及能成为中位数的数的个数,以及选择不同中位数中间的可能性. 也就是说当数组个数为奇数时,中位数就只有一个,中间那个以及中位数相等的数都能成为中位数,选择的中位数就只有一种可能:如果为 ...
- iOS弹出底部视图简单实现
- 项目基本目录 其中xib文件用来自定义需要弹出的视图. 在主控制器里设置popview的frame等信息代码如下: 底部视图(popview)初始化放在父类视图的最顶部或者说是整个屏幕的最底部,宽 ...
- listview添加onItemClickListener
MainActivity.java package com.wyl.listview04; import java.util.ArrayList; import java.util.HashMap; ...
- Executor框架
Executor框架是指java5中引入的一系列并发库中与executor相关的功能类,包括Executor.Executors.ExecutorService.CompletionService. ...
- 浙江大学2015年校赛B题 ZOJ 3861 Valid Pattern Lock
这道题目是队友写的,貌似是用暴力枚举出来. 题意:给出一组数,要求这组数在解锁的界面可能的滑动序列. 思路:按照是否能够直接到达建图,如1可以直接到2,但是1不能直接到3,因为中间必须经过一个2. 要 ...
- iOS8 UITableView 分割条设置separator intent = 0 不起作用
转自:http://blog.csdn.net/ljb_wh/article/details/40788333 ios7的时候在storyboard 设置 TableView的separator in ...
- Qt中所有类型之间的转换
1.char * 与 const char *的转换 char *ch1="hello11";const char *ch2="hello22";ch2 = c ...