简单的循环咖啡脚本不工作

时间:2013-04-22 12:07:46

标签: coffeescript

这可能是一个非常简单的答案的问题,但我无法理解为什么这不起作用;

sort = (arr) ->
    word for word in arr
        if word is 'some word'
                console.log 'word present'

我想做的就是console.log是一个单词出现在数组中但我刚刚得到

Parse error on line 4: Unexpected 'INDENT'

有人可以解释或给我一个暗示,为什么这不起作用。 谢谢:))

1 个答案:

答案 0 :(得分:4)

您的代码应如下所示。 (仔细观察循环):

sort = (arr) ->
    for word in arr
        if word is 'some word'
            console.log 'word present'

或简写:

sort = (arr) ->
    for word in arr when word is 'some word'
        console.log 'word present'

您尝试使用的语法是为了理解。

这里有一个示例,您可以保存匹配的数组的每个元素的第一个字母:

sort = (arr) ->
    firstLetter = (word[0] for word in arr when word is 'some word')

修改
结合上面的例子:

sort = (arr) ->
    console.log word for word in arr when word is 'some word'