您的位置是:网站首页>Javascript编程Javascript编程

JavaScript数组常用API方法和遍历方法的小结(附示例)遍历

少儿编程网2020-03-27 14:58:32Javascript编程 人已围观 来源:少儿编程 -用户投稿

简介本篇文章给大家带来的内容是关于JavaScript数组常用API方法和遍历方法的小结(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。数组(array)ES5*map语法:[].map(function(item,index,array){returnxxx})功能:遍历数组

版权所有:http://wWw.pxcodeS.com

本篇文章给大家带来的内容是关于JavaScript数组常用API方法和遍历方法的小结(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

数组 (array)edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

ES5 *edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

mapedm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

语法:[].map(function(item, index, array) {return xxx})edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:遍历数组,返回回调返回值组成的新数组,不改变原数组,不会对空数组进行检测edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

forEachedm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

语法:[].forEach(function(item, index, array) {})edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:无法break,可以用try/catch中throw new Error来停止,不改变原数组edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

filteredm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

语法:[].filter(function(item, index, array) {})edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:过滤,返回过滤后的数组,不改变原数组,不会对空数组进行检测edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

eg:edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

const data = [-8, 9, 5, 3];
const res = data.filter(function(item) {
    if (item > 3) {
      return item
    }
});
console.log(res); // [9, 5]

some

语法:[].some(function(item, index, array) {})edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:有一项返回true,则整体为true,不改变原数组edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

every

语法:[].every(function(item, index, array) {})edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:需要全部符合条件才返回true,有一项返回false,则整体为false,不改变原数组edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

join

语法:[].join(str)edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:返回通过指定连接符str把数组连接成字符串,不改变原数组edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

push / pop

语法:[].push(item) / [].pop(item)edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:数组末尾推入push和弹出pop,返回改变后数组的长度/弹出项,改变原数组edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

unshift / shift

语法:[].unshift(item) / [].shift(item)edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:数组头部推入unshift和弹出shift,返回改变后数组的长度/弹出项,改变原数组edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

sort(fn) / reverse

语法:[].sort(fn) [].reverse()edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:按规则排序与反转,改变原数组edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

splice

语法:[].splice(start, number, value1, value2...)edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:返回删除元素组成的数组,从start处开始删除number个值后插入valueN参数列表到数组中,改变原数组edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

concat

语法:[].concat([])edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:连接n(n >= 2)个数组,返回数组连接后的数组副本,浅拷贝,不改变原数组edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

slice

语法:[].slice(start, end)edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:返回截断后的新数组,不改变原数组edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

indexOf / lastIndexOf(value, fromIndex)

语法:[].indexOf(value[, fromIndex])edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
查找数组项edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
indexOf 从fromIndex(默认为0)开始向后查找valueedm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
lastIndexOf 从fromIndex(默认为-1)开始向前查找valueedm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
返回value对应的下标edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

reduce / reduceRight

语法:reduce / reduceRight(callback[, initialValue])edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:两两执行,prev 为上次化简函数的return值,cur 为当前值(从第二项开始)edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
callback 函数的参数:之前值(previousValue)、当前值(currentValue)、索引值(currentIndex)以及数组本身(array)edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
initialValue 可选的初始值,作为第一次调用回调函数时传给previousValue的值。也就是,为累加等操作传入起始值(额外的加值)edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

reduceRight是从数组的末尾开始edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

isArray *

语法:Array.isArray(value)edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:用于确定参数value是否是一个Arrayedm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

ES6

find *

ind(fn)`edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:返回符合条件的第一个数组元素itemedm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

findIndex *

语法:[].findIndex(fn)edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:返回符合条件的第一个数组元素的索引edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

from *

语法:[].fill(value[, start, end])edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:将类似数组的对象和可遍历(iterable)的对象转为真正的数组edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
常用:edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

const set = new Set(3, 8, 9, 0)
Array.from(set)

entries *

语法:[].entries()edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:返回迭代器:返回键值对edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

【注】Object.entries(obj)方法返回一个给定对象自身可枚举属性的键值对数组,其排列与使用 for...in 循环遍历该对象时返回的顺序一致(区别在于 for-in 循环也枚举原型链中的属性)【MDN】edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
[].entries()是Array.prototype上的方法edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
keys/values 类似edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

//数组
const arr = ['a', 'b', 'c'];
for(let v of arr.entries()) {
    console.log(v)
}
// [0, 'a'] [1, 'b'] [2, 'c']

//Set
const arr1 = new Set(['a', 'b', 'c']);
for(let v of arr1.entries()) {
    console.log(v)
}
// ['a', 'a'] ['b', 'b'] ['c', 'c']

//Map
const arr2 = new Map();
arr2.set('a', 'a');
arr2.set('b', 'b');
for(let v of arr2.entries()) {
    console.log(v)
}
// ['a', 'a'] ['b', 'b']

keys *

语法:[].keys()edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:返回迭代器:返回键key(即上面的每个数组中的第一个值)edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

values

语法:[].values()edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:返回迭代器:返回值value(即上面的每个数组中的第二个值)edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

includes *

语法:[].includes(val[, fromIndex])edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:用于从fromIndex判断数组中是否包含val,可替代ES5中的 indexOfedm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

copyWithin

语法:[].copyWithin(target[, start[, end]])edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:浅复制数组的一部分(start~end)到同一数组中的另目标位置target,返回改变后的数组,而不修改其大小;start默认为0, end默认为length-1; 改变原数组edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

of

语法:Array.of()edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:创建一个具有可变数量参数的新数组实例,而不考虑参数的数量或类型edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

Array构造函数 & Array.of() 区别edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
实例说明edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

Array.of(7);       // [7] 
Array.of(1, 2, 3); // [1, 2, 3]

Array(7);          // [ , , , , , , ]
Array(1, 2, 3);    // [1, 2, 3]

fill

语法:[].fill(value[, start, end])edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
功能:用指定的元素填充数组,可用于初始化数组,返回改变后的数组,改变原数组edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台
填充值(value),填充起始位置(start,默认为0),填充结束位置(end,默认为数组length)。edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

遍历

数组

map/forEach/some/every/filter 见上edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

for

for...in

遍历所有可枚举属性,常用于遍历对象Objectedm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

for...of

遍历所有可迭代iterable的对象edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

对象【属性】

for...in

循环遍历对象自身的和继承的可枚举属性(不含Symbol属性)【可枚举 - Symbol】edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

Object.keys(obj)

返回一个数组,包括对象自身的(不含继承的)所有可枚举属性(不含Symbol属性)【自身可枚举 - Symbol】edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

Object.getOwnPropertyNames(obj)

返回一个数组,包含对象自身的所有属性(不含Symbol属性,但是包括不可枚举属性)【自身 - Symbol】edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

Object.getOwnPropertySymbols(obj)

返回一个数组,包含对象自身的所有Symbol属性【自身的Symbol】edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

Reflect.ownKeys(obj)

返回一个数组,包含对象自身的所有属性,不管是属性名是Symbol或字符串,也不管是否可枚举 【自身所有】edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

【相关推荐:JavaScript视频教程】edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

以上就是JavaScript数组常用API方法和遍历方法的小结(附示例)的详细内容,更多请关注少儿编程网其它相关文章!edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

来源:php中文网edm少儿编程网-Scratch_Python_教程_免费少儿编程学习平台

版权所有:http://wWw.pxcodeS.com


相关文章:

支持一下 ( )

JavaScript数组常用API方法和遍历方法的小结(附示例)遍历

      匿名评论
    • 评论
    人参与,条评论
    JavaScript数组常用API方法和遍历方法的小结(附示例)遍历

客服在线

服务时间

周一至周日 9:00-21:00