如何在 CoffeeScript 中循环遍历数组以获得特定值
How do I loop through an array for a particular value in CoffeeScript
我正在尝试使用 CoffeeScript 遍历数组以提取 full_name
值,如下所示。最近几天我一直在研究 Stack overflow 和 CoffeeScript 的文档,但无法弄清楚。这就是我目前拥有的。你能告诉我我做错了什么吗?
Angular JS
<disabled-display template="{{ctrl.getTechnicianNames()}}">
CoffeeScript
ctrl.getTechnicianNames = (full_name) ->
array_of_persons = ctrl.technicians
ctrl.getTechnicianNames full_name for full_name in array_of_persons
ctrl.technicians
{email: "email@address.com", first_name: "John", full_name: "John Johnson",
last_name: "Johnson"},
{email: "address@email.com", first_name: "Frank", full_name: "Frank Franklin",
last_name: "Franklin"}
ctrl.getTechnicianNames = ->
ctrl.technicians.map((technician) => technician.full_name)
与 CoffeeScript 无关,您只需要 Array.prototype.map
:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map
有更多的 coffeescripty 方式:
ctrl.technitianNames = -> (t.full_name for t in @technicians)
注意避免使用 get
前缀。在 Java 和 C++ 以外的(据我所知)语言中,它被认为是一种代码味道。
我正在尝试使用 CoffeeScript 遍历数组以提取 full_name
值,如下所示。最近几天我一直在研究 Stack overflow 和 CoffeeScript 的文档,但无法弄清楚。这就是我目前拥有的。你能告诉我我做错了什么吗?
Angular JS
<disabled-display template="{{ctrl.getTechnicianNames()}}">
CoffeeScript
ctrl.getTechnicianNames = (full_name) ->
array_of_persons = ctrl.technicians
ctrl.getTechnicianNames full_name for full_name in array_of_persons
ctrl.technicians
{email: "email@address.com", first_name: "John", full_name: "John Johnson",
last_name: "Johnson"},
{email: "address@email.com", first_name: "Frank", full_name: "Frank Franklin",
last_name: "Franklin"}
ctrl.getTechnicianNames = ->
ctrl.technicians.map((technician) => technician.full_name)
与 CoffeeScript 无关,您只需要 Array.prototype.map
:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map
有更多的 coffeescripty 方式:
ctrl.technitianNames = -> (t.full_name for t in @technicians)
注意避免使用 get
前缀。在 Java 和 C++ 以外的(据我所知)语言中,它被认为是一种代码味道。