javascript - 遍历list用map有什么好处,一般什么情况下会用js的map方法?
巴扎黑
巴扎黑 2017-04-10 17:49:52
[JavaScript讨论组]

js的map方法一般什么情况下用?会有兼容性问题吗?

巴扎黑
巴扎黑

全部回复(2)
天蓬老师

map 映射的意思,也就是原数组被“映射”成对应新数组。

var data = [1, 2, 3, 4];

var arrayOfSquares = data.map(function (item) {
  return item * item;
});

console.log(arrayOfSquares);

比如上面的代码, 就是对数组里的数值求平方

兼容性, ie9+

PHP中文网

(手机码字如果格式乱了请见谅…)
语法:
array.map(callback, [thisArg])

map 方法会给原数组中的每个元素都按顺序调用一次 callback 函数。callback 每次执行后的返回值组合起来形成一个新数组。如果 thisArg 参数有值,则每次 callback 函数被调用的时候,this 都会指向 thisArg 参数上的这个对象。如果省略了 thisArg 参数,或者赋值为 null 或 undefined,则 this 指向全局对象 。

简单来说,当你需要对数组内所有元素使用同一种运算时就可以用map来做了,但是注意,map()是返回一个新数组,原数组并不会发生变化。
比如,求数组平方根:

var numbers = [1, 4, 9];
var roots = numbers.map(Math.sqrt);
/* roots的值为[1, 2, 3], numbers的值仍为[1, 4, 9]*/

以上内容参考MDN里的map方法说明,更多详细内容见Array.prototype.map()-JavaScript|MDN,楼主问的兼容性问题里面也有详细说明,这里就不贴了。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号