在下划线/lodash中,如何避免在“map”方法中重复计算
In underscore/lodash, how to avoid duplicate calculation in a `map` method?
这是我的代码:
var transformed = _(original).map(function (c) {
return {
lat: wgs2gcj(c.latitude, c.longitude).lat
lng: wgs2gcj(c.latitude, c.longitude).lng
}
});
假设wgs2gcj
是来自第三方库的函数,需要很长时间才能计算。有没有办法只进行一次计算?
transformed = _(original).map(function (c) {
var coordinates = wgs2gcj(c.latitude, c.longitude);
return {
lat: coordinates.lat
lng: coordinates.lng
}
});
对于更少的代码,你也可以使用 pick():
_(original)
.map(function(c) {
return _.pick(wgs2gcj(c.latitude, c.longitude), 'lat', 'lng');
})
.value();
相关文章:
- 渲染方法与生命周期方法中的React计算
- 在Knockoutjs中设置计算对象的observableArray的更好方法
- 有没有一种方法可以让javascript不计算特定的字符
- 在JavaScript数组中查找最后一个元素的计算效率最高的方法
- 这是计算余弦相似度的正确方法吗
- 有什么方法可以获得或计算ScrollView的速度吗
- React.js中计算值的正确方法
- 这种计算画布元素中非白色像素的方法有什么问题
- RxJS中计算值流最大值的惯用方法
- 计算十进制幂的方法
- 为什么这种用于计算数组重复并将其存储到对象中的方法有效
- 根据 jquery 中 2 个选择列表的选定值动态计算的最佳方法
- 正确的方法是什么,使用THREE.js方法来计算相机的偏航
- 计算日期窗体下拉列表的月天数的最佳方法
- 在Javascript中计算弧度的正确方法
- 有没有一种方法可以计算只有js(没有Node.js)的doc、docx、pdf页面
- 借助firebug或IE 8调试器或chrome调试器来计算javascript函数流的方法
- 创建两个函数来计算对象属性/方法
- 一种通过网站连接到计算机上托管的程序的方法
- Javascript方法计算成本()不为我返回任何值