JavaScript -- 03 数组
来源:互联网 发布:mac 倩女幽魂 编辑:程序博客网 时间:2024/06/10 03:15
数组
1.JavaScript的Array可以包含任意数据类型,并通过索引来访问每个元素。可以直接用arr.length来取得Array的长度,直接给Array的length赋一个新的值会导致Array大小的变化,Array可以通过索引把对应的元素修改为新的值,因此,对Array的索引进行赋值会直接修改这个Array。
var arr = [1,2,3.14,'hello',null,true];arr.length; //6var arr = [1,2,3];arr.length = 6;//arr变为[1,2,3,undefined,undefined,undefined]arr.length = 2;//array变为[1,2]var arr = ['A', 'B', 'C'];arr[1] = 90;arr; //arr现在为['A', 90, 'C']
var arr = [1, 2, 3];arr[6] = 'x';arr;// arr变为[1, 2, 3, undefined, undefined, 'x']
但是在编写代码时,不建议直接修改Array的大小,访问索引时要确保索引不会越界。
3.与String类似,Array也可以通过indexOf() 来搜索一个指定的元素的位置:
var arr = [10, 20, '30', 'xyz'];arr.indexOf(10);//元素10的索引为0arr.indexOf(20); //元素20的索引为1arr.indexOf(30);//元素30没有找到,返回-1arr.indexOf('30');//元素'30'的索引为2
4.slice()就是对应String的substring()版本,它截取Array的部分元素,然后返回一个新的Array:
var arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G'];arr.slice(0,3);//从索引0开始,到索引3结束,但不包含索引3:['A', 'B', 'C']arr.slice(3);//从索引3开始到结束: ['D','E', 'F', 'G']slice()的起止参数包含开始索引,不包含结束索引,如果不给slice()传递任何参数,它就会从头到尾截取所有元素,这样就可以很容易复制一个Array:
var acopy = arr.slice();
5.push()向Array的末尾添加若干元素,pop()把Array的最后一个元素删除掉。
6.使用unshift()方法,可以往Array的头部添加若干元素,shift()方法则是把Array的第一个元素删掉:
var arr = [1, 2];arr.push('A', 'B');arr.pop();//pop()返回'B'arr.pop();arr.pop();arr.pop();arr.pop();//连续pop()4次,空数组时继续pop不会报错,而是返回undefined
var arr = [1, 2];arr.unshift('A', 'B');arr; //['A', 'B', 1, 2];arr.shift();arr; //['B', 1, 2]arr.shift();//空数组继续shift不会报错,而是返回undefined
var arr = ['B', 'C', 'A'];arr.sort();arr;//['A', 'B', 'C']
8.使用reverse()方法把整个Array的元素给反转。
var arr = ['one', 'two', 'three'];arr.reverse();arr; //['three', 'two', 'one']
var arr = ['Microsoft', 'Apple', 'Yahoo', 'AOL', 'Excite', 'Oracle'];//从索引2开始删除3个元素,然后再添加两个元素arr.splice(2, 3, 'Google', 'Facebook');//返回删除的元素['Yahoo', 'AOL', 'Excite']arr;//['Microsoft', 'Apple', 'Google', 'Facebook', 'Oracle']//只删除,不添加arr.splice(2, 2); //['Google', 'Facebook']arr;//['Microsoft', 'Apple', 'Oracle']//只添加,不删除arr.splice(2, 0, 'Google', 'Facebook');arr;//['Microsoft', 'Apple', 'Google', 'Facebook', 'Oracle']
10.使用concat()方法把当前的Array和另一个Array连接起来,并返回一个新的Array:
var arr = ['A', 'B', 'C'];var added = arr.concat([1, 2, 3]);added;//['A', 'B', 'C', 1, 2, 3]arr; //['A', 'B', 'C']var arr = ['A', 'B', 'C'];arr.concat(1, 2, [3, 4]);
11.使用join()方法把当前Array的每一个元素都用指定的字符串连接起来,然后返回来你连接后的字符串:
var arr = ['A', 'B', 'C', 1, 2, 3];arr.join('_');//'A-B-C-1-2-3'
var arr = [[1, 2, 3], [400, 500, 600], '-'];上述Array包含三个元素,其中头两个元素本身也是Array。
var x = arr[1][1]; //x = 500
阅读全文
0 0
- 03-javascript数组对象
- 03-javascript 数组
- JavaScript -- 03 数组
- javascript 数组
- JavaScript 数组
- Javascript数组
- javascript数组
- JavaScript 数组
- JavaScript 数组
- javascript数组
- javascript 数组
- javascript数组
- javaScript 数组
- JavaScript数组
- javascript数组
- javascript 数组
- javascript数组
- javascript数组
- 应用程序缓存
- AES加密的四种模式详解
- 字符串根据逗号截取
- MFC,将debug配置为release、mfu140ud.dll丢失、#include _AFXDLL 、No such file or directory
- jquery总结--学习笔记(1)
- JavaScript -- 03 数组
- 原生android打开另一个 APP
- 为什么国外客户愿意把软件交给印度人来做?
- linux学习(一)
- bzoj1083 [SCOI2005]繁忙的都市(最小生成树)
- Class.forName 的作用
- 北大博士在阿里:因为期待,你需要更出色!
- 揭秘支付宝中的深度学习引擎:xNN
- 后摩尔时代,如何给你的CPU减负?