1、创建数组的基本方式有两种,第一种使用Array构造函数

  

  使用Array构造函数时可以省略new操作符  

2、第二种方式是使用数组字面量表示法

  

由于IE的实现与其他浏览器不一致,因此我们不赞同使用这个方法

3、数组的length属性不是只读的,可以从数组的末尾移除项或向数组中添加新项

  

4、数组最多可以包含4294967295个项,

5、检测数组

  

6、Array.isArray(value);这个方法的目的是最终确定某个值到底是不是数组。而不管是他在哪个全局执行环境中创建的

  方法的浏览器支持的有IE9+,Chrome,Opera10.5+,Safari 5+。Firefox+

7、转换方法

  所有对象都有toLocaleString()/toString()/valueof()

  toLocaleString()有时候与toString()方法的值一样,有时候也不一样,比如

  

8、join()方法,使用不同的分隔符来构建这个字符串

  

var colors = ['red','blur','yellow'];
alert(colors.join('||'));
弹出的是

  

  如果数组中的某一项值是null或者undefined,那么join()、toLocale-String()/toString()/valueof()方法返回的        结果中以空字符串表示

 var colors= ['red','blur',''];
alert(colors);
弹出的是


9、push()/pop()栈方法

  栈是一种LIFO的数据结构(后进先出),数组也提供了一种让数组的腥味类似于其他数据结构的方法。最先添加的项最早被移除。栈中的项的插入(叫做推入)和移除(交做弹出),只发生在一个位置——栈的顶部。ECMAScript提供了push()/pop()方法来实现类似栈的行为

  push()接受任意数量的参数,添加到数组末尾,并返回修改后数组的长度

var colors = new Array();
var count = colors.push("red","green");
alert(count);//2

  返回数组的长度为2

var colors = new Array();
var count = colors.push("red","green");
//此时colors为:colors=["red","green"]
count = colors.push("black");
//此时colors为:colors=["red","green","black"]
alert(count);//3

  

  pop()方法从数组末尾移除最后一项,减少数组的length值,返回移除的项

  

var colors = new Array();
var count = colors.push("red","green");
//此时colors为:colors=["red","green"]
count = colors.push("black");
//此时colors为:colors=["red","green","black"]
alert(count);//3
var item = colors.pop();
//此时colors为:colors=["red","green","black"],pop()方法返回的是数组的最后一项,所以是black
alert(item);//弹出的是black
//此时colors为:colors=["red","green"]
alert(colors.length);//2

  

10、shift()unshift()队列方法

  shift(),移除数组中的第一个项,饼返回该项,同时将数组的长度减1,与push()组合

  unshift(),在数组前端添加任意个项并返回新数组的长度,与pop()组合

11、reverse()重排序方法

  reverse()和sort()。

  reverse()方法会对反转数组项的顺序

var values = [1,2,3,4,5];
values.reverse();
alert(values);//5,4,3,2,1

12、sort()。

  reverse()方法不够灵活,因此使用sort()方法

  默认情况下sort()是最小的排在最前面,升序排列。sort()调用每个数组项的toString()转型方法,然后比较的道德字符串,以确定如何排序。

function compare(value1, value2) {
if(value1 < value2) { //如果第一个参数应该位于第二个参数之后,那么返回的是正数
return 1;
} else if (value1 > value2){
return -1;//如果第一个参数应该位于第二个参数之前,那么返回的是负数
} else {
return 0;
}
}
var values = [0,1,14,10,15];
values.sort(compare);
alert(values);//[15,14,10,1,0]

  

Array类型(一)的更多相关文章

  1. JS高程5.引用类型(2)Array类型

    Array类型: ECMAScript数组的每一项可以保存任何类型的数据,数组的大小是可以动态调整的. 创建数组的基本方式: (1)使用Array构造函数 var color=new Array(); ...

  2. 5.2 Array类型介绍

    Array类型是数组类型,Array(数组)类型也是引用类型中的一种. js 数组中的每一项可以保存任何类型的数据. js数组的大小/长度是可以动态调整的.如果你往数组中添加数据,数组长度会自动增加. ...

  3. JavaScript中Array类型方法总结

    Array类型是ECMAScript中最常用的类型之一,ECMAScript中的数组与其他多数语言中的数组有着相当大的区别.ECMAScript数组的每一项可以保存任何类型的数据.这里总结了数组类型的 ...

  4. Object类型与Array类型

    总结--JS中的引用类型: Object类型,Array类型,Boolean类型,Number类型,String类型,Date类型, Function类型,RegExp类型,单体内置对象(Global ...

  5. oracle Array类型作为参数传入函数(存储过程) 大字符串参数解决方案

    1. 创建自定义的类型.由于Oracle没有提供现成的array类型,这里用table类型来模拟. CREATE OR REPLACE TYPE varchar_array is Table OF v ...

  6. mongo中查询Array类型的字段中元素个数

    I have a MongoDB collection with documents in the following format: { "_id" : ObjectId(&qu ...

  7. 引用类型之Array类型

    Array类型 ECMAScript数组与其它语言数组一样,都是数据的有序列表.但是ECMAScript数组的每一项可以保存任何类型的数据.而且,ECMAScript数组是可以动态调整的. 1.创建和 ...

  8. JavaScript引用类型之Array类型一

    一.简介 除了Object之外,Array类型恐怕是ECMAScript中最常用的类型了.下面就来分析ECMAScript中的数组与其他语言中的数组的异同性: 1.相同点: (1)他们都是数据的有序列 ...

  9. 如何判断一个变量是数组Array类型

    在很多时候,我们都需要对一个变量进行数组类型的判断.JavaScript中如何判断一个变量是数组Array类型呢?我最近研究了一下,并分享给大家,希望能对大家有所帮助. JavaScript中检测对象 ...

  10. 从头开始学JavaScript (十二)——Array类型

    原文:从头开始学JavaScript (十二)--Array类型 一.数组的创建 注:ECMAscript数组的每一项都可以保存任何类型的数据 1.1Array构造函数 var colors = ne ...

随机推荐

  1. Ubuntu 修改 Apache2 用户组 方法

    检查/etc/apache2/envvars文件,发现其中需要使用/etc/apache2/envvars文件中的以下几个环境变量 export APACHE_RUN_USER=www-data ex ...

  2. 使用nRF51822/nRF51422创建一个简单的BLE应用 ---入门实例手册(中文)之五

    5应用测试 需要一个USB dongle与开发板evaluation kit,并配合Master Control Panel软件,以用于测试BLE应用.前期的准备工作在<nRF51822 Eva ...

  3. 【GNOME 边框】GNOME窗口无边框

    今天我新装了一台LINUX UBUNTU12.10,顺手就把UNITY换成了GNOME,但是发现边框消失. 大概原因:metacity 不同版本配置之间的冲突. 解决办法:删除home目录下的旧配置文 ...

  4. NOD32强制卸载工具使用方法【转】

    装了ESET NOD32又忘记密码了,无法卸载,怎么办? 以下转自官网:http://faq.eset.com.cn/index.php?pid=254 [适用产品:ESET NOD32 防病毒软件4 ...

  5. Eclipse自动补全功能轻松设置 || 不需要修改编辑任何文件

    本文介绍如何设置Eclipse代码自动补全功能.轻松实现输入任意字母均可出现代码补全提示框.   Eclipse代码自动补全功能默认只包括 点"."  ,即只有输入”." ...

  6. C/C++四种退出线程的方法

    退出线程可以有四种方法: 1.线程函数的return返回(最好这样): 其中用线程函数的return返回, 而终止线程是最安全的, 在线程函数return返回后, 会清理函数内申请的类对象, 即调用这 ...

  7. hdu 5642 King's Order(数位dp)

    Problem Description After the king's speech , everyone is encouraged. But the war is not over. The k ...

  8. Lua Interface基础使用

    Lua是一种可爱的脚本语言,由Roberto Ierusalimschy.Waldemar Celes 和 Luiz Henrique de Figueiredo所组成并于1993年开发. 其设计目的 ...

  9. Beans(dp,两次dp)

    Beans Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Subm ...

  10. Python 获取Facebook用户Friends的爱好类别中的Top10

    CODE: #!/usr/bin/python # -*- coding: utf-8 -*- ''' Created on 2014-8-12 @author: guaguastd @name: f ...