Array类型(一)
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类型(一)的更多相关文章
- JS高程5.引用类型(2)Array类型
Array类型: ECMAScript数组的每一项可以保存任何类型的数据,数组的大小是可以动态调整的. 创建数组的基本方式: (1)使用Array构造函数 var color=new Array(); ...
- 5.2 Array类型介绍
Array类型是数组类型,Array(数组)类型也是引用类型中的一种. js 数组中的每一项可以保存任何类型的数据. js数组的大小/长度是可以动态调整的.如果你往数组中添加数据,数组长度会自动增加. ...
- JavaScript中Array类型方法总结
Array类型是ECMAScript中最常用的类型之一,ECMAScript中的数组与其他多数语言中的数组有着相当大的区别.ECMAScript数组的每一项可以保存任何类型的数据.这里总结了数组类型的 ...
- Object类型与Array类型
总结--JS中的引用类型: Object类型,Array类型,Boolean类型,Number类型,String类型,Date类型, Function类型,RegExp类型,单体内置对象(Global ...
- oracle Array类型作为参数传入函数(存储过程) 大字符串参数解决方案
1. 创建自定义的类型.由于Oracle没有提供现成的array类型,这里用table类型来模拟. CREATE OR REPLACE TYPE varchar_array is Table OF v ...
- mongo中查询Array类型的字段中元素个数
I have a MongoDB collection with documents in the following format: { "_id" : ObjectId(&qu ...
- 引用类型之Array类型
Array类型 ECMAScript数组与其它语言数组一样,都是数据的有序列表.但是ECMAScript数组的每一项可以保存任何类型的数据.而且,ECMAScript数组是可以动态调整的. 1.创建和 ...
- JavaScript引用类型之Array类型一
一.简介 除了Object之外,Array类型恐怕是ECMAScript中最常用的类型了.下面就来分析ECMAScript中的数组与其他语言中的数组的异同性: 1.相同点: (1)他们都是数据的有序列 ...
- 如何判断一个变量是数组Array类型
在很多时候,我们都需要对一个变量进行数组类型的判断.JavaScript中如何判断一个变量是数组Array类型呢?我最近研究了一下,并分享给大家,希望能对大家有所帮助. JavaScript中检测对象 ...
- 从头开始学JavaScript (十二)——Array类型
原文:从头开始学JavaScript (十二)--Array类型 一.数组的创建 注:ECMAscript数组的每一项都可以保存任何类型的数据 1.1Array构造函数 var colors = ne ...
随机推荐
- vim 多行注释
多行注释: 1. 进入命令行模式,按ctrl + v进入 visual block模式,然后按j, 或者k选中多行,把需要注释的行标记起来 2. 按大写字母I,再插入注释符,例如// 3. 按esc键 ...
- 栈应用之中缀表达式计算 MFC实现(计算器核心)
大家好,我是小鸭酱,博客地址为:http://www.cnblogs.com/xiaoyajiang 支持小数.阶乘.乘方.加减乘除.括号优先级运算,美化输出结果(显示结果末尾没有多余的0) void ...
- 【ROC曲线】关于ROC曲线、PR曲线对于不平衡样本的不敏感性分析说引发的思考
ROC曲线 在网上有很多地方都有说ROC曲线对于正负样本比例不敏感,即正负样本比例的变化不会改变ROC曲线.但是对于PR曲线就不一样了.PR曲线会随着正负样本比例的变化而变化.但是没有一个有十分具体和 ...
- hdu 4419 Colourful Rectangle
http://acm.hdu.edu.cn/showproblem.php?pid=4419 题意:给出3种颜色,重叠会生成新的颜色,然后有一些矩形,求出每种颜色的面积. 转化为二进制表示颜色:001 ...
- Power on & RESET 之前?
這是個有趣的問題 ? 當應用系統 或 ic元件模組於初始之前存在的現像為何 是個得住意的問題 ! 因為得考量 是否會對週邊或被控制端造成危害 這也是長常常會是不穩定設計 的原因!得有實務經驗及想像力才 ...
- 2B相对来说,早期它的成长速度不会像2C那么快
叶冠泰:今天我们是在场比较少数的2B的公司,你能不能给创业者一些分享,你觉得2B跟2C的差别是什么,我们要怎样发展? 蒋韬:这可能跟性格有关系,我的性格可能更适合去做2B的业务. 对于做2B业务的创业 ...
- windows下wchar_t* 转char*
这个在windows下很常见,常用,留个档. 一般用这个函数: size_t wcstombs( char *mbstr, const wchar_t *wcstr, size_t count ); ...
- VM虚拟机安装苹果雪豹操作系统
1.win xp虚拟机安装Mac OSX 一.用VM8安装mac os x10.6 ,然后升级到的10.6.8,如何安装vm大家自己百度吧.这里指列出了如何安装雪豹操作系统. DMG是mac os x ...
- YUM配置
一.yum环境的本地源搭建(基于VSFTP): 1)安装vsftp; @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [root ...
- 3 Sum Closest 解答
Question Given an array S of n integers, find three integers in S such that the sum is closest to a ...
