热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

js教程-javascript数组

数组是数据的集合,在内存中,是一块连续内存的地址;js的数组分为一维数组和多维数组

Javascript 的数组

一.什么是数组

数组是数据的集合,在内存中,是一块连续内存的地址;js的数组分为一维数组和多维数组。

1. 关于数组的创建

  • var arr=[值1,值2,值3];
  • var arr=new Array(值1,值2,值3);  
  • var array=new Array(size);



/定义了一个叫arr1的数组
//里面有三个数组元素
//它们的值分别为zhangsan、lisi、wangwu
var arr1=['zhangsan','lisi','wangwu'];
//定义了一个叫arr2的数组
//里面有二个数组元素
//它们的值分别为xiaoqiang、wangcai
var arr2=new Array('xiaoqiang','wangcai');
//定义了一个叫arr3的数组
//里面有三个数组元素
//它们现在的值都为空
var arr3=new Array(3);
//进一步对js中定义数组进行解释
var str='hello'; //它其实也是String类的类对象,所以还可以写成
var str1=new String('hello');
var a1=[1,2,3,4]; //它其实也是Array类的类对象,所以还可以写成
var a2=new Array(1,2,3,4);
var i1=10; //其实i是Number类的类对象,所以还可以写成
var i2=new Number(10);

Typeof :测试数据类型二.测试数据类型



var age=10;
var name='xiaoqiang';
var marry=true;
var arr=[10,'xiaoqiang',true];
document.write(typeof age);
document.write('
'); document.write(typeof name); document.write('
'); document.write(typeof marry); document.write('
'); document.write(typeof arr);
数组名.属性在JS中,数组变量属于object数据类型(对象数据类型),属于Array类的类对象,所以数组可以这样来使用:


数组名.方法();

1. 数组长度

  • length :表示数组长度(数组元素个数)
js教程

在Js中,数组的长度是可以动态设置的

如:给一个数组增加长度,那么这个数组的元素个数也增加

如:将一个数组长度减少,那么会从数组末发尾去掉相应的元素

php教程

三.遍历数组

在js中,要对数组进行遍历,有两种方法:

1) for循环

js数组

2) for…in语句 js数组遍历专用

  • for( var i in array ){

}

js教程

注释:如果一个数组中有文本下标,那么在使用for循环取值时,将不能输出对应的文本下标元素,尽量使用for...in语句来遍历这种数组

四.文本下标

  • 格式::arr[‘key’]
  • 文本下标的数组元素不计入数组长度
php教程
  • 需要使用for...in语句进行遍历 
php教程
  • 可以使用对象名.调用文本下标 调用元素
js数组

#p#php教程-Javascript编程-数组函数#e#

五.数组相关函数

1.添加数组元素

  • arrayObject.push(newelement1,newelement2,....,newelementX)  在数组末尾添加一个或多个数组元素
  • arrayObject.unshift(newelement1,newelement2,....,newelementX)  在数组开头添加一个或多个数组元素
  • arrayObject.splice(index,howmany,element1,.....,elementX) 在数组某个位置添加一个或多个数组元素

Index:位置

Howmary:替换多少个,(设置为0)

php教程

2. 删除数组元素

  • arrayObject.pop() 删除最后一个数组元素
  • arrayObject.shift() 删除第一个数组元素
  • arrayObject.splice(index,howmany) 删除指定位置个数的元素

Index:删除的起始位置

Howmary:多少个


//定义一个数组
var arr=['zhangsan','lisi','wangwu'];
//将wangcai添加至数组的最后
arr.push('wangcai');
//打印元素值
display(arr);
//将xiaoqiang添加至数组的开头,数组自动重新排列下标
arr.unshift('xiaoqiang');
//打印
display(arr); 
//将这两个元素从第2个位置插入至数组
arr.splice(2,0,'huangliu','huqi');
display(arr);
arrayObject.slice(start[,end])  截取数组一部分3. 数组的截取或合并


Start:开始位置

End:结束位置 (-1)

  • arrayObject.concat(arrayX,arrayX,......,arrayX) 合并数组

数组的添加和删除是指直接对数组变量进行更新操作

数组的截取或合并会返回一个新的数组   


var arr=['zhangsan','lisi','wangwu','xiaoqiang','wangcai'];
//2:起始位置
//4:终止位置,但需要-1,所以这里的位置是3
arr1=arr.slice(2,4);
display(arr1);
 //将arr数组和arr2数组中的元素进行合并 
var arr2=['huangliu','huqi'];
//将合并之后的数组放入到arr3中
var arr3=arr.concat(arr2);
display(arr3);
arrayObject.sort() 排序,默认按升序排列3. 数组元素排序


  • arrayObject.reverse() 倒转数组元素
js数组函数

4. 数组与字符串转换相关函数

  • arrayObject.join(separator) 使用指定的分隔符连接数组元素,最后返回字符串
  • stringObject.split(separator, howmany) 将字符串按照指定的分隔符进行分割,最后返回字符串


//定义一个数组
 var arr=['zhangsan','lisi','wangwu','xiaoqiang','wangcai'];
 //用-_-符号为分隔符将数组元素进行连接,并返回一个字符串
 var str=arr.join('-_-');
 //打印字符串
 document.write(str+'
'); //定义一个字符串,使用|分隔 var str='zhangsan|lisi|wangwu'; //按照|为分隔符进行切割,并返回一个新数组 var arr1=str.split('|'); //打印数组 display(arr1);

提示:六. 作业:用js完成一个地区2级联动。


Option类:(选项类)

  • l var 对象=new Option(文本[,值]);
  • 对象名.options

options:选项对象集合

  • 对象名.options.add(选项对象) 添加选项


推荐阅读
author-avatar
mobiledu2502857983
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有