在Mozilla的矩形类Rect
文档中,他们提到的一个函数是map()
函数,它将函数作为参数。该功能的描述是:
在矩形的左,右,上,下各值上调用指定函数。
但矩形的固有属性为x
,y
,width
和height
。虽然"对"和"底部"矩形的计算很容易计算,map
函数修改计算值而不是Rect
对象的实际属性似乎很奇怪。这是文档中的拼写错误吗?它不会 奇怪;我在查看文档页面时发现了其他几个小错字,但是这个实际上影响了函数的工作方式。由于Rect
课程不是要实例化的课程,我不知道如何测试Mozilla的代码来自行检查。
我理解地图功能的概念及其作用,但我不经常使用它们,所以也许这就是它们通常的工作方式。它 有意义地在四个相同类型的值(左,上,右,下:位置)上调用相同的函数而不是在一个(x,y:位置)和两个中的两个上调用相同的函数另一个(宽度,高度:数量)。
答案 0 :(得分:1)
通过在DXR上查找Rect对象,文档似乎是correct。
通过做一些codaeology(我编写了这个词,代码+考古学:-D),我发现map函数是用bug 520910引入的。审核人似乎对使用right
和bottom
代替height
和width
没有任何顾虑。
意见:正如你所说,我敢说,映射四种相同类型的值(左,上,右,下:位置)是有意义的。这甚至更有意义,因为width
和height
仅用于初始化Rect
:right
和bottom
是常用的internally
专家提示:如果您想查看Mozilla的代码,可以使用DXR查看代码(甚至快速搜索!)。