Functional programming 为什么?映射迭代对象';s参数是(值,键)不是(键,值)?

Functional programming 为什么?映射迭代对象';s参数是(值,键)不是(键,值)?,functional-programming,underscore.js,Functional Programming,Underscore.js,据文件说, 若列表是一个JavaScript对象,迭代对象的参数将是(值、键、列表) 我必须经常检查单据以核实订单。为什么value,key不是key,value [编辑] 我想我(总是)感到困惑,因为CoffeeScript中的for循环在键、值上迭代: yearsOld = max: 10, ida: 9, tim: 11 ages = for child, age of yearsOld "#{child} is #{age}" 因为值是最重要、最通用的部分。在对象上映射可能不是很

据文件说,

若列表是一个JavaScript对象,迭代对象的参数将是(值、键、列表)

我必须经常检查单据以核实订单。为什么
value,key
不是
key,value

[编辑]

我想我(总是)感到困惑,因为CoffeeScript中的for循环在
键、值上迭代:

yearsOld = max: 10, ida: 9, tim: 11

ages = for child, age of yearsOld
  "#{child} is #{age}"

因为
是最重要、最通用的部分。在对象上映射
可能不是很多,但是当在数组上映射时,通常使用一元函数(只取值)。索引(或键)几乎从未使用过,因此它成为参数列表中通常忽略的第二个参数。

您是否在问库的创建者为什么这样做?你为什么不直接问他们呢?否则我不确定你期望得到什么样的答案。“这样做是因为有人决定这样做。”