一、什么是数组?

数组是一个值的集合,每一个值都有一个索引号,从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)的更多相关文章

  1. JavaScript入门篇 编程练习

    编程挑战 一.定义"改变颜色"的函数 提示: obj.style.color obj.style.backgroundColor 二.定义"改变宽高"的函数 提 ...

  2. JavaScript入门

    本篇内容是学习慕课网相关课程后,总结出可能未来会忘记的内容 (一)JavaScript入门操作 1.js代码插入位置,以及执行顺序 <head> <script type=" ...

  3. 慕课网JavaScript入门篇课程笔记

    1.js注释很重要 单行注释,在注释内容前加符号 “//”. <script type="text/javascript"> document.write(" ...

  4. JavaScript入门基础

    JavaScript基本语法 1.运算符 运算符就是完成操作的一系列符号,它有七类: 赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=).算术运 ...

  5. JavaScript入门介绍(二)

    JavaScript入门介绍 [函数] 函数function 是Javascript的基础模块单元,用于代码的复用.信息影藏和组合调用. function a(){} 函数对象Function Lit ...

  6. JavaScript入门介绍(一)

    JavaScript入门介绍 [经常使用的调试工具][w3school.com.cn在线编辑] [Chrome浏览器 开发调试工具]按F121.代码后台输出调试:console.log("t ...

  7. 开心菜鸟系列----函数作用域(javascript入门篇)

      1 <!DOCTYPE html>   2 <html>   3 <script src="./jquery-1.7.2.js"></ ...

  8. 开心菜鸟系列----变量的解读(javascript入门篇)

                       console.info(         console.info(window['weiwu'])          console.info(window. ...

  9. javascript入门视频第一天 小案例制作 零基础开始学习javascript

    JavaScript 是我们网页设计师必备的技能之一.我们主要用javascript来写的是网页特效.我们从零基础开始学习javascript入门. 但是,好的同学刚开始不知道怎么学习,接触js,因此 ...

  10. ArcGIS API for JavaScript 入门教程[0] 目录

    随时翻看. 转载注明出处,博客园/CSDN/B站:秋意正寒. Part 1 必看 ArcGIS API for JavaScript 入门教程[1] 渊源 你还真不一定知道这是啥.非得学吗? ArcG ...

随机推荐

  1. ☀【Grunt】no such file or directory, imagemin

    JPG image optimization not workinghttps://github.com/gruntjs/grunt-contrib-imagemin/issues/16 npm un ...

  2. diamond专题(三)—— diamond架构

    大家好,这次为大家带来的是diamond的架构,架构如下图所示: 对该图进行一些说明: 1.作为一个配置中心,diamond的功能分为发布和订阅两部分.因为diamond存放的是持久数据,这些数据的变 ...

  3. LightOJ 1074 Extended Traffic SPFA 消负环

    分析:一看就是求最短路,然后用dij,果断错了一发,发现是3次方,有可能会出现负环 然后用spfa判负环,然后标记负环所有可达的点,被标记的点答案都是“?” #include<cstdio> ...

  4. c++11 lambda递归调用写法

    偶然想到要在函数内部使用lambda递归调用,以下是可行的写法,可参考 std::function<void(Node * container,const BlendFunc &blen ...

  5. linux内核申请内存函数

    kmap函数:    把某块高端内存映射到页表,然后返回给用户一个填好vitual字段的page结构    建立永久地址映射,不是简单的返回virtual字段的pageioremap:    驱动程序 ...

  6. BZOJ1997 [Hnoi2010]Planar (2-sat)

    题意:给你一个哈密顿图,判断是不是平面图 思路:先找出哈密顿图来.哈密顿回路可以看成一个环,把边集划分成两个集合,一个在环内,一个在外.如果有两条相交边在环内,则一定不是平面图,所以默认两条相交边,转 ...

  7. Git 钩子

    1. 概念概述 1.1. 安装钩子 1.2. 脚本语言 1.3. 钩子的作用域 2. 本地钩子 2.1. 预提交钩子 Pre-Commit 2.2. 准备提交信息钩子 Prepare Commit M ...

  8. C++中构造函数和析构函数调用的时机

    今天看书忽然对这个地方有点模糊,尤其是析构函数在调用默认的析构函数和用户自己覆写的析构函数的时候有点意识模糊呢.写段代码总结下 #include <iostream> using name ...

  9. Codeforces294B - Shaass and Bookshelf(贪心)

    题目大意 给你N本书,每本书由一个厚度t[i](1或者2),宽度w[i],高度都是一样,把一些书竖着放,然后一些书横着放在同一层,就像下图那样放: 问你把所有的书放好之后竖着的书的总厚度是多少? 题解 ...

  10. python —print

    今天开始学python了,“装X”安装了最新版本python 3.4.1 然后,print “hello world!" 就出错了... 一搜原来... python v3.0以后的版本pr ...