JavaScript内置对象-Array
▓▓▓▓▓▓ 大致介绍
除了Object之外,Array类型恐怕就是JavaScript种最常用的类型了,JavaScript中的数组与其他语言中的数组有很大的区别,例如,数组的每一项可以存放任何值,并且数组的大小事可以动态调整的
▓▓▓▓▓▓ 创建数组的两种方法
创建数组有两种方法:一是用构造函数,二是用对象字面量的方法
构造函数方式
使用Array构造函数
var colors = new Array();
创建一个含有二十项的数组
var colors = new Array(20);
创建一个包含三项的数组
var colors = new Array("pink","black","white");
对象字面量方式
数组字面量由一对包含数组项的方括号表示
var colors = ["red","blue","green"];
▓▓▓▓▓▓ length属性
JavaScript数组中的length是没有上界的,如果用大于当前length值的数字作为下标来储存值,那么数组就会被扩充来容纳这个元素。
var empty = [];
empty.length; //
empty[100] = 'QQQ';
empty.length; //
//[]后置下标运算符把它所包含的表达式转换成一个字符串,如果该表达式有toString方法,就使用该方法的值
empty['100']; //QQQ
如果把length设小将导致所有下标大于等于新length的属性被删除
var numbers = [
'zero','one','two','three','false','12'
];
numbers.length = 2;
console.log(numbers); //["zero", "one"]
▓▓▓▓▓▓ in运算符
检查某个键名是否存在的in运算符,也可以适用于数组
var myArray = [1,'2','name','23e']; 0 in myArray //true
2 in myArray //true
4 in myArray //false
注意:如果某个位置的值为0,也会返回false
var a = [];
a[100] = 1;
a[3] in myArray; //false
▓▓▓▓▓▓ 数组的遍历
数组的遍历通常是用for或者while循环,并不推荐for..in循环
var a = [1, 2, 3]; // for循环
for(var i = 0; i < a.length; i++) {
console.log(a[i]);
} // while循环
var i = 0;
while (i < a.length) {
console.log(a[i]);
i++;
} var l = a.length;
while (l--) {
console.log(a[l]);
}
还有一种遍历方法就是使用forEach(),在后面会讲到
▓▓▓▓▓▓ 数组的空位
当数组的两个逗号之间没有任何值,那么这个数组就有空位
数组的空位是不会影响length属性,并且访问空位会返回undefined,使用delete删除数组元素,会返回空值
var myArray = [1,'2',,,]; console.log(myArray.length); //
console.log(myArray[3]); //undefined
数组的某个位置是空位,与某个位置是undefined,是不一样的。如果是空位,使用数组的forEach方法、for...in结构、以及Object.keys方法进行遍历,空位都会被跳过
var a = [, , ,];
a.forEach(function (x, i) {
console.log(i + '. ' + x);
})
// 不产生任何输出
for (var i in a) {
console.log(i);
}
// 不产生任何输出
Object.keys(a)
// []
如果某个位置是undefined,遍历的时候就不会被跳过。
▓▓▓▓▓▓ 数组方法
我的这这篇博客详细的写了有关数组的方法,这里就不在重复http://www.cnblogs.com/qqandfqr/p/5558199.html
参考资料:
阮一峰JavaScript标准参考教程(alpha)-语法-数组
JavaScript语言精粹第六章
JavaScript高级程序设计(第三版)第五章 Array类型
JavaScript内置对象-Array的更多相关文章
- javaScript 内置对象-Array数组
Array 对象方法 方法 描述 concat() 连接两个或更多的数组,并返回结果. join() 把数组的所有元素放入一个字符串.元素通过指定的分隔符进行分隔. pop() 删除并返回数组的最后一 ...
- JavaScript 内置对象 Array 数组
Array 数组 1.创建数组 构造函数 new Array() 小括号内可以是数组元素个数,也可以是数组项 数组字面量表示法 var arr = [1,2,3,4,5]; 2.数组长度 arr.le ...
- JavaScript内置对象Array、String 的方法
Array push() //将一个或多个数据加入到数组的末端,并返回新的数组长度. pop() //取出数组中的最后一项,修改length属性,并返回被删除的数据 shift() //取出数组中的第 ...
- javascript数组的内置对象Array
javascript的内置对象Array是用于构造数组的全局对象,数组是类似于列表的高阶对象. 创建数组的方法: 1通过字面量:var arr = [1,2,3]; 里面的参数直接作为数组里的值 2通 ...
- 17-[JavaScript]- 内置对象 Array,String,Date,Math
1.Array数组 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> < ...
- javascript 内置对象及常见API
javascript 内置对象及常见API 2012-09-02 15:17 571人阅读 评论(0) 收藏 举报 javascript正则表达式文档浏览器urlstring Javascript内置 ...
- JavaScript进阶 - 第7章 JavaScript内置对象
第7章 JavaScript内置对象 7-1 什么是对象 JavaScript 中的所有事物都是对象,如:字符串.数值.数组.函数等,每个对象带有属性和方法. 对象的属性:反映该对象某些特定的性质的, ...
- JavaScript高级:JavaScript面向对象,JavaScript内置对象,JavaScript BOM,JavaScript封装
知识点梳理 课堂讲义 1.JavaScript面向对象 1.1.面向对象介绍 在 Java 中我们学习过面向对象,核心思想是万物皆对象. 在 JavaScript 中同样也有面向对象.思想类似. 1. ...
- document和javaScript内置对象
1.Document 属性: referrer //返回载入当前文档的URL URL //返回当前文档的URL 方法: getElementById(); //根据id获取html元素对象 getEl ...
随机推荐
- 使用spol导出exce
sqlplus 能生产xls的excel文件 connect / as sysdba; SET NEWPAGE 0 SET SPACE 0 SET LINESIZE 80 SET PAGESIZE 0 ...
- MVC笔记1
测试实体类 public class Test { public int id{get;set;} [Required(ErrorMessage="不能为空喔")] [String ...
- python获取绑定的IP,并动态指定出口IP
在做采集器的过程中,经常会遇到IP限制的情况,这时候可以通过切换IP能继续访问. 如果是多IP的服务器,那么可以通过切换出口Ip来实现. 1.首先是如何获取服务器绑定的IP import netifa ...
- Tomcat用法--Servlet开发
本来想玩一下微信公众号开发,没想到学习曲线真是恶心的很,首先你要配置Tomcat--你要会Servlet--你要会JSP,妈的!贴出来 快哭瞎了,各种文档,好吧,提供一个教你搞java EE文档的博客 ...
- 让VLC也拥有斷點播放功能
如何让VLC也拥有记忆功能,记住上次播放位置.以下都是在Windows系统下操作,其他 方法/步骤 下载 libsrpos_plugin-0.5.win 插件 https://sourceforge. ...
- iOS 沙盒
1. 概念 某个应用程序的非代码文件存放空间. 2. 文件结构 每个沙盒有三个文件夹: Documents: 存放文件 Library: 存放默认设置或状态信息.Library/caches: 缓存文 ...
- mysql常用博客论坛
大神博客: starive的博客:http://blog.itpub.net/26435490/viewspace-1133659/ 北在南方的博客:http://blog.itpub.net/226 ...
- CentOS 6.6下JDK1.7安装与配置(Linux)经典入门详解案例
最近用的linux较多,在网站找了一些关于linux环境下jdk安装的教程,过程是有的但是好多细节都没有表现出来,所以我花了点时间总结了一下,希望对大家都有帮助... CentOS下JDK1.7安装与 ...
- thinkPHP 模板中的语法
一.导入CSS和JS文件 1.css link js scr <link rel='stylesheet' type='text/css' href='__PUB ...
- easyUI 添加排序到datagrid
http://www.cnblogs.com/javaexam2/archive/2012/08/10/2632645.html