JS学习-数组

来源:互联网 发布:哨位集成箱网络控制器 编辑:程序博客网 时间:2024/06/05 03:06

1.1 JS的数组可以包含任意数据类型的任意数据。
注意1:1. OC数组包含同一类型的对象;2. swift包含同一类型的任意数据
1.2 通过索引赋值时,如果索引超过了数组范围,则数组的大小会自动变大(为了避免出现错误,存取值保证不会越界):

var arr = [1, 2, 3];arr[5] = "x";arr; // arr变为[1, 2, 3, undefined, undefined, "x"]

slice

slice()就是String的substring()版本

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"]

push和pop

push()向Array的末尾添加若干元素,pop()则把Array的最后一个元素删除掉:

var arr = [1, 2];arr.push('A', 'B'); // 返回Array新的长度: 4arr; // [1, 2, 'A', 'B']arr.pop(); // pop()返回'B'arr; // [1, 2, 'A']arr.pop(); arr.pop(); arr.pop(); // 连续pop 3次arr; // []arr.pop(); // 空数组继续pop不会报错,而是返回undefinedarr; // []

unshift和shift

如果要往Array的头部添加若干元素,使用unshift()方法,shift()方法则把Array的第一个元素删掉:

var arr = [1, 2];arr.unshift('A', 'B'); // 返回Array新的长度: 4arr; // ['A', 'B', 1, 2]arr.shift(); // 'A'arr; // ['B', 1, 2]arr.shift(); arr.shift(); arr.shift(); // 连续shift 3次arr; // []arr.shift(); // 空数组继续shift不会报错,而是返回undefinedarr; // []

sort

arrayObject.sort(sortby)

5.1 参数
sortby参数可选,规定排序顺序。必须是函数
5.2 返回值
对数组的引用。返回原数组
5.3 如果参数为空,按照字符编码的顺序进行排序。
如果进行指定排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:

  • 若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值
  • 若 a 等于 b,则返回 0。
  • 若 a 大于 b,则返回一个大于 0 的值。

reverse

reverse()把整个Array的元素给掉个个,也就是反转

splice

splice()方法是修改Array的“万能方法”,它可以从指定的索引开始删除若干元素,然后再从该位置添加若干元素:

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']

concat

concat()方法把当前的Array和另一个Array连接起来,并返回一个**新的**Array

join

join()方法是一个非常实用的方法,它把当前Array的每个元素都用指定的字符串连接起来,然后返回连接后的字符串,如果Array的元素不是字符串,将自动转换为字符串后再连接:

var arr = ['A', 'B', 'C', 1, 2, 3];arr.join('-'); // 'A-B-C-1-2-3'
原创粉丝点击