javascript map 值可以是函数吗
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript map 值可以是函数吗相关的知识,希望对你有一定的参考价值。
参考技术A js的object和php的array仅仅是刚好能实现差不多相同的功能而已,不用说区别根本没必要强行联系起来,这是两个语言里的两种功能相近的类型,连提供的方法都不一样.非要区别的话,php的array和js里的array更接近(可以认为js中array的基类是object,继承了object所有的方法),另外js里object和array的键只能是字符串,即使用number当索引实际也会转换成字符串处理,即obj[1]和obj["1"]是相同的js的map即是ecmascript6里新增的一种类型也是array的一个方法,指后者的话,map是用来根据原数组的值生成一个新数组用的(取map的callback的返回值),foreach是单纯的遍历数组用的.这两个方法是从python等其它语言中引入的,引入这两个函数的目的只是为了方便而已,自己用for能实现完全相同的功能.两个方法的参数感觉只有第二个"thisobject"可能要解释一下,如果第一个参数传入的callback函数中使用了this关键字,那么可以给thisobject传入一个对象来指代这个this,作用相当于callback.call(thisobject,value);本回答被提问者采纳 参考技术B 是可以的,用het方法取出后加特号调用JavaScript中Array内置对象里map函数的使用
一、概念
map()
函数本身不改变原数组,而是处理完数据后重新返回一个新数组,新数组中的元素是原数组中的每个元素执行回调函数后的返回值,在该回调函数中可根据需要处理数据并返回。
注意:当需要同时修改原数组时,可以在 callback 执行过程中给原数组重新赋值。
二、语法
arr.map( callback( currentElement, currentIndex, originalArray), thisObj )
说明:
callback 是传入 map() 的回调函数,是必传参数。
thisObj 传入时会被用作回调函数的 this 值,是可选参数
currentElement 指 callback 当前元素,必传参数。
currentIndex 指 callback 当前元素的索引,可选参数。
originalArray 指被处理的数组,即原数组,可选参数。
三、示例
1、返回新数组:由原数组中每个元素的10倍数值组成的。
let originArray = [ 2, 4, 6, 8 ]
let newArray = originArray.map(function(currentElement)
return currentElement * 10
)
console.log(newArray) // 输出结果为:[20, 40, 60, 80]
简写方式:
let newArray = originArray.map( item => (item * 10) )
console.log(newArray) // 输出结果为:[20, 40, 60, 80]
2、修改原数组:将原数组中每个元素的数字扩大20倍。
let originArray = [ 2, 4, 6, 8 ]
originArray.map((cur,index) => ( originArray[index] = cur * 20 ) )
console.log(originArray ) // 输出结果为:[40, 80, 120, 160]
以上是关于javascript map 值可以是函数吗的主要内容,如果未能解决你的问题,请参考以下文章
如何形象地解释 JavaScript 中 map,foreach,reduce 间的区别
如何形象地解释 JavaScript 中 map,foreach,reduce 间的区别
Javascript学习之Map和Filter函数实现方法详解