JavaScript数组知识网络
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了JavaScript数组知识网络,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1925字,纯文字阅读大概需要3分钟。
内容图文
JavaScript数据类型
基本数据类型
- Boolean
- Null
- Number
- String
- Symbol
- Undefined
对象数据类型Object
- Build-in object
- Array
- Date
- RegExp
- more...
Array
- 定义:JavaScript数组是内置的对象之一,它可以用一个变量来存储多个同种类型或不同类型的值。
- 构造方法
- var newArr = new Array(values);
- var newArr = [values];
- 判断是否数组
- Array.isArray(arr)
- arr instance of Array
- 数据结构
- 栈(stack) 后进先出(LIFO), 操作:进栈arr.push(element), 出栈arr.pop(element)
- 队列(queue) 先进先出(FIFO), 操作:入队arr.shift(element), 出队arr.unshift(element)
- 排序
- 反序. arr.reverse()
- 正序. arr.sort(compare). 若是字母,arr.sort()默认按字母表顺序排列; 若是数字数字字符串,可以通过设置compare函数返回值来升序或降序排列。
function compare(a, b) { return a - b; //升序, return b - a 为降序 }
- 数组连接(concat)
var newArray = currentArray.concat(arr1, arr2);
其中 arr1和arr2可以是字符串或者数组
- slice和splice
二者皆有切片功能,即把数据的某部分切下来放到另一个数组里。不同的是slice只是把原数组的内容复制到另一个数组,并不会影响原数组,而splice则会影响原数组。打个比方,slice就像一台扫瞄仪,只扫描信息,不损坏原来信息;而splice像一个影片剪辑,会对剪辑的影片进行剪掉或拼接。两者的最后一个参数都是可选的,slice默认count为currArr.length - index, 而splice默认insertElement为空.
slice用法:var newArr = currArr.slice(index, count) 结果是把currArr从index开始之后的count个元素扫描到newArr;
splice用法:var newArr = currArr.splice(index, count, insertElement) 结果是把currArr从index开始之后count个元素剪掉放到newArr里。
- 索引
arr.indexOf(element) 从arr[0]开始找出element所在位置
arr.lastIndexOf(element) 从arr[arr.length-1] 开始找出element的位置。
- 数组遍历
- every. var result = currArr.every(function(element, index, array){ return ... }); result类型为Boolean
- some. var result = currArr.some(function(element, index, array){ return ... }); result类型为Boolean
- map var result = currArr.map(function(element, index, array){ return ... }); result类型为Array
- filter var result = currArr.every(function(element, index, array){ return ... }); result类型为Array
- forEach 无返回值
- 归并
- reduce 用法 var result = currArr.reduce(pre, curr, index, array){return pre+curr;} 从currArr[0]开始求数组元素之和
- reduceRight 用法 var result = currArr.reduceRight(pre, curr, index, array){return pre+curr;} 从currArr[currArr.length - 1]开始求数组元素之和
- 两者结果相同
原文:http://www.cnblogs.com/vsky/p/5634646.html
内容总结
以上是互联网集市为您收集整理的JavaScript数组知识网络全部内容,希望文章能够帮你解决JavaScript数组知识网络所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。