What does it mean to use the javascript map function generically?(泛泛地使用javascript map函数是什么意思?)
问题描述
我正在查看Mozilla开发人员页面上有关map函数的文档,有关于其中一个示例的问题。
这里是指向开发页面的链接。我现在看的是"一般使用地图"的例子。我还包含了以下代码:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map
var map = Array.prototype.map;
var a = map.call('Hello World', function(x) { return x.charCodeAt(0); });
// a now equals [72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100]
首先,使用map"泛指"是什么意思。我猜这和
var map = Array.prototype.map;
JS中的Prototype对我来说仍然是新事物之一。用我自己的话说,我所理解的是,它可以用来改变函数的工作方式,并且它的工作方式可以将类的功能添加到JS中。
无论如何,这在map变量中存储了什么?为什么他们现在可以将字符串传递给map函数的args?在MAP上调用MAP函数而不是执行以下操作有什么意义:
var a = 'Hello World'.split('').map( function(x) { return x.charCodeAt(0); });
推荐答案
首先,"一般地"使用map是什么意思。
"一般地使用map"意味着在开始时不是数组的对象上使用Array.prototype.map()
。它适用于字符串‘Hello World’,因为‘Hello World’将返回一个长度,并且可以像数组一样迭代。
对我来说仍是新鲜事物之一是JS中的原型
我喜欢把原型看作是"这个类中刚刚内置的东西"。例如,假设您正在制作一款涉及赛车的视频游戏。所有车辆都有"开"和"停"的能力。您可以创建一个‘Vehicle’类,并将‘Drive’和‘Stop’方法保存到其原型中,而不是制作数百辆汽车并一遍又一遍地输入它们的‘Drive’和‘Stop’方法。现在,当您创建‘Fastcar’时,您将使其成为‘Vehicle’的实例,然后可以访问这些原型‘Drive’和‘Stop’方法,而不必每次都重新编写它们。
您在上面发布的map变量中存储的内容是什么?
map
变量只是引用Array.prototype.map
,因此不需要每次都键入它的较长形式。
为什么它们现在可以将字符串传递给map函数的args
字符串没有作为map函数的参数传递。相反,正在对字符串本身调用map。
在map上调用map函数有什么意义
var map
在您的帖子中并不实际调用Array.prototype.map
,它需要在末尾加上括号才能真正调用它,如下所示:Array.prototype.map()
。
而不是像
您提出的解决方案没有任何问题,但我认为文档向您展示了它的灵活性,以及同一问题总是有不同的解决方案。
这篇关于泛泛地使用javascript map函数是什么意思?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:泛泛地使用javascript map函数是什么意思?
基础教程推荐
- 角度Apollo设置WatchQuery结果为可用变量 2022-01-01
- 在 JS 中获取客户端时区(不是 GMT 偏移量) 2022-01-01
- Karma-Jasmine:如何正确监视 Modal? 2022-01-01
- 当用户滚动离开时如何暂停 youtube 嵌入 2022-01-01
- 有没有办法使用OpenLayers更改OpenStreetMap中某些要素 2022-09-06
- 响应更改 div 大小保持纵横比 2022-01-01
- 动态更新多个选择框 2022-01-01
- 悬停时滑动输入并停留几秒钟 2022-01-01
- 在for循环中使用setTimeout 2022-01-01
- 我什么时候应该在导入时使用方括号 2022-01-01