98 在CoffeeScript中将值附加到数组的规定方法是什么?我已经检查了PragProg CoffeeScript书,但它仅讨论创建,切片和拼接以及迭代,但不讨论附加。 arrays append coffeescript — 戴夫·萨格 source
192 好老push仍然有效。 x = [] x.push 'a' — 提洛 source 9 这里是PragProg书的作者。+1为Thilo的答案。我不想Array在本书中介绍原型方法,因为已经有很多好的JavaScript文档。见,例如,developer.mozilla.org/en/JavaScript/Reference/Global_Objects/... — 特雷弗·伯纳姆 如果我们有一个对象而不是一个字符怎么办? — ʀʀʏ2014年 我期待x << 'a'工作。 — Chloe
49 更好的方法是使用列表推导。 例如而不是这样: things = [] for x in list things.push x.color 改为这样做: things = (x.color for x in list) — 泗水 source 23 这不会将列表中的值附加到事物上。那将完全替换事物数组。我也测试过了。 — 2011年 好吧,肯定ajsie,您是对的,它确实替代了它,而不是附加。关键是,然而,通常在进行推送时,无论如何,您通常都在做类似于数组理解的事情。诚然,并非在所有情况下都如此,而是很多时间。 — suranyami 2012年 3 @suranyami相反,我想不到这有什么用。我宁愿做things = list,也要简洁得多。 — 迈克尔·多斯特 @suranyami链接已死。 — derekdreery 2013年 @拟人化当然,。这是一个人为的例子。可以说是这样的: colors = (item.color for item in list) — suranyami 2014年
2 如果要链接调用,则希望追加返回数组而不是长度。在这种情况下,您可以使用.concat([newElement]) 必须为[newElement],因为concat期望一个与其串联的数组一样。效率不高,但在正确的设置下看起来不错。 — 保罗学校 source 链接调用更像是一种时尚的事情,但是,正如您所说的“方法效率不高”一样,它concat返回一个由数组A +数组B的元素构成的新数组。保留对对象的引用,以便对引用的对象进行更改在数组A中,数组B或concat结果也将反映在其他数组中。 — SidOfc
Array
在本书中介绍原型方法,因为已经有很多好的JavaScript文档。见,例如,developer.mozilla.org/en/JavaScript/Reference/Global_Objects/...