JavaScript入门(5)
一、什么是数组?
数组是一个值的集合,每一个值都有一个索引号,从0开始,每个索引都有一个相应的值,根据需要添加更多数值。
好比一个团,团里有很多人。如下使用数组存储5个学生成绩:


二、如何创建数组
使用数组之前先要创建,而且需要把数组本身赋至一个变量
{
创建数组语法:
var myarray=new Array();
创建数组的同时,还可以为数组指定长度,长度可以任意指定。
var myarray = new Array(8);//创建数组,存储8个数据
}
{
注意:
1、创建的新数组是空数组,没有值,如输出,则显示undefined
2、虽然创建数组时,指定了长度,但实际上数组都是变长的,也就是说即使指定了长度为8,仍然可以将元素存储在规定长度以外。
}
三、数组赋值
数组的表达方式:
第一步:创建数组var myarr = new Array();
第二步:给数组赋值
myarr[1]="张三";
myarr[2]="李四";
{
Eg:创建一个数组,用于存储5个人的数学成绩
var myarray=new Array();//创建一个新的空数组
myarray[0]=66;//存储第1个人的成绩
myarray[1]=80;//存储第2个人的成绩
myarray[2]=90;//存储第3个人的成绩
myarray[3]=77;//存储第4个人的成绩
myarray[4]=59;//存储第5个人的成绩
}
注意:数组每个值有一个索引号,从0开始
{
上例简单方法
1、var myarry = new Array(66,80,90,77,59);//创建数组同时赋值
2、var myarry = [66,80,90,77,59]//直接输入一个数组(称“字面量数组”)
}
注意:数组存储的数据可以是任何类型(数字、字符、布尔值等)
四、向数组增加一个新元素

myarray[5]=88;//使用一个新索引,为数组增加一个新元素。
五、使用数组元素
数组中每一个值有一个索引号,从0开始。
如下图,marray变量存储6个人的成绩:

要得到一个数组元素的值,只需引用数组变量并且提供一个索引
Eg:
第一个人成绩表示方法:marray[0]
第三个人成绩表示方法:marray[2]
六、数组属性length
想要知道数组的大小,可以引用数组的一个属性length。
length表示数组的长度,即数组中元素的个数。
{
语法:
myarray.length;//获取数组myarray的长度
注:因为数组的索引是由0开始,所以一个数组的上下限分别为:0和length-1.
如:数组长度是5,上下限分别是0和4
}
{
Eg:
var arr=[55,32,5,90,60,98,76,54];//包含8个数值的数组arr
document.write(arr.length);//显示数组长度8
document.write(arr[7]);//显示第8个元素的值54
}
{
注:JS数组的length属性是可变的,这一点需要特别注意。
arr.length=10;//增大数组的长度
document.write(arr.length);//数组长度已经变为10
}
{
数组随元素的增加,长度也会改变,如:
var arr=[98,76,54,56,76];//包含5个数值的数组
document.write(arr.length);//显示数组的长度5
arr[15]=34;//增加元素,使用索引为15,赋值为34
alert(arr.length);//显示数组的长度16
}
七、二维数组
一维数组,看成是一组盒子,每个盒子只能放一个内容
一维数组表示:myarray[ ]
二维数组,看出是一个盒子,不过每个盒子里还可以放多个盒子。
注:二维数组的两个维度的索引值也是从0开始,两个维度的最后一个索引值为长度-1.
1、二维数组的定义方法一
var myarr = new Array(); //先声明一维
for(var i=0;i<2;i++){ //一维长度为2
myarr[i] = new Array(); //再声明二维
for(var j=0;j<3;j++){ //二维长度为3
myarr[i][j]=i+j; //赋值,每个数组元素的值为i+j
}
}
表格表示

2、二维数组的定义方法二
var Myarr=[[0, 1, 2][1, 2, 3]]
3、赋值
myarr[0][1]=5;//将5的值传入到数组中,覆盖原有值
说明:myarr[0][1], 0表示表的行,1表示表的列。
JavaScript入门(5)的更多相关文章
- JavaScript入门篇 编程练习
编程挑战 一.定义"改变颜色"的函数 提示: obj.style.color obj.style.backgroundColor 二.定义"改变宽高"的函数 提 ...
- JavaScript入门
本篇内容是学习慕课网相关课程后,总结出可能未来会忘记的内容 (一)JavaScript入门操作 1.js代码插入位置,以及执行顺序 <head> <script type=" ...
- 慕课网JavaScript入门篇课程笔记
1.js注释很重要 单行注释,在注释内容前加符号 “//”. <script type="text/javascript"> document.write(" ...
- JavaScript入门基础
JavaScript基本语法 1.运算符 运算符就是完成操作的一系列符号,它有七类: 赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=).算术运 ...
- JavaScript入门介绍(二)
JavaScript入门介绍 [函数] 函数function 是Javascript的基础模块单元,用于代码的复用.信息影藏和组合调用. function a(){} 函数对象Function Lit ...
- JavaScript入门介绍(一)
JavaScript入门介绍 [经常使用的调试工具][w3school.com.cn在线编辑] [Chrome浏览器 开发调试工具]按F121.代码后台输出调试:console.log("t ...
- 开心菜鸟系列----函数作用域(javascript入门篇)
1 <!DOCTYPE html> 2 <html> 3 <script src="./jquery-1.7.2.js"></ ...
- 开心菜鸟系列----变量的解读(javascript入门篇)
console.info( console.info(window['weiwu']) console.info(window. ...
- javascript入门视频第一天 小案例制作 零基础开始学习javascript
JavaScript 是我们网页设计师必备的技能之一.我们主要用javascript来写的是网页特效.我们从零基础开始学习javascript入门. 但是,好的同学刚开始不知道怎么学习,接触js,因此 ...
- ArcGIS API for JavaScript 入门教程[0] 目录
随时翻看. 转载注明出处,博客园/CSDN/B站:秋意正寒. Part 1 必看 ArcGIS API for JavaScript 入门教程[1] 渊源 你还真不一定知道这是啥.非得学吗? ArcG ...
随机推荐
- maven常用技巧
安装Maven后我们会在用户目录下发现.m2 文件夹.默认情况下,该文件夹下放置了Maven本地仓库.m2/repository.所有的Maven构件(artifact)都被存储到该仓库中,以方便重用 ...
- 【转】VC MFC 如何删除文件,目录,文件夹
原文网址:http://shijuanfeng.blogbus.com/logs/100675115.html 第一种方法:定义一个文件类对象来操作CFile TempFile; Temp ...
- Java问题汇集(1)
1.javax.el.PropertyNotFoundException: Property 'Price' not found on type pet.petshop.dto.WareDto 简答: ...
- WCF大数据量传输解决方案
文章内容列表:1. 场景:2. 解决方案3. WCF契约与服务实现设计静态图4. WCF契约与服务实现设计详细说明6. 服务端启动服务代码:7. 客户端代码8. WCF大数据量传输解决方案源码下载 ...
- bzoj2763: [JLOI2011]飞行路线 分层图+dij+heap
分析:d[i][j]代表从起点到点j,用了i次免费机会,那就可以最短路求解 #include <stdio.h> #include <iostream> #include &l ...
- SQL Server查询性能优化——覆盖索引(二)
在SQL Server 查询性能优化——覆盖索引(一)中讲了覆盖索引的一些理论. 本文将具体讲一下使用不同索引对查询性能的影响. 下面通过实例,来查看不同的索引结构,如聚集索引.非聚集索引.组合索引等 ...
- GTK+中的构件II(Widgets)
GTK+中的构件II(Widgets) GTK+中的构件II(Widgets) 在本章的GTK+程序设计中,我们仍然要继续向大家介绍和展示各种各样的构件. GtkComboBox GtkComboBo ...
- object c小代码——日期篇
1.判断两个日期是否是同一天,不要求小时,分钟要一样 用法 NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier: ...
- JDK1.5新特性(三)……Varargs
援引 Varargs - This facility eliminates the need for manually boxing up argument lists into an array w ...
- vijosP1223麦森数
vijosP1223麦森数 链接:https://vijos.org/p/1223 [思路] 快速幂+高精乘. 计算2^p-1可以快速幂的方法在O(logn)的时间内出解,限于数据范围我们需要用到高精 ...