【问题标题】:For Loops Using Javascript使用 Javascript 的 For 循环
【发布时间】:2011-06-12 23:39:31
【问题描述】:

我正在尝试将此代码从 Javascript 转换为 CoffeeScript:

for (var i = 0; i < names.length; i++) {
    str += "Hello" + names[i] + "!<br />";
}

但是在 CoffeeScript 项目主页上只有一个简单的示例说明如何进行 for 循环,我也不太理解,那么如何将其转换为 CoffeeScript?

【问题讨论】:

    标签: javascript coffeescript code-conversion


    【解决方案1】:

    我会这样做:

    msg = ("Hello #{name}!" for name in names).join '\n'

    【讨论】:

      【解决方案2】:

      试试这个:

      str += 'Hello' + name + '!<br />' for name in names
      

      【讨论】:

      • 我认为CoffeeScript已经内置了字符串插值,所以你应该也可以做到str += "Hello ${name}!&lt;br /&gt;" ...
      • @CD 这是一个很好的功能:)@Nathan 这个字符串插值对你有用吗?如果是的话,我会把它放在我的答案中......
      • 不,结果是Hello ${name}!&lt;br /&gt;Hello ${name}!&lt;br /&gt;Hello ${name}!&lt;br /&gt;
      • @Nathan 试试这个:str += "Hello #{name}!&lt;br /&gt;"。这个article 表明# 符号用于字符串插值,而不是$ 符号...
      • 使用 # 我得到了这个:Hello Nathan,John,Michel!&lt;br /&gt;
      【解决方案3】:

      Šime 和 Acorn 在最佳答案方面击败了我,但值得补充的是,您的代码的直译是

      for i in [0...names.length]
        str += "Hello #{names[i]}!<br />"
      

      或使用后缀而不是缩进,

      str += "Hello #{names[i]}!<br />" for i in [0...names.length]
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-02-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-10-10
        • 2016-07-30
        • 2023-04-09
        相关资源
        最近更新 更多