【问题标题】:Is there a special character to prevent ASI是否有特殊字符可以防止 ASI
【发布时间】:2018-07-23 08:09:28
【问题描述】:

在编写不带分号的 Javascript 时,\n 成为惯用的语句终止符,但有时实际上并非如此,我想在我的代码中表达这一点。那么是否有一个特殊字符明确阻止自动分号插入,以减轻这种不确定性?

请注意,我实际上赞成在可能的情况下使用分号,但与我一起工作的一些人想省略它们。

【问题讨论】:

  • 请发一个例子。
  • your question is closed 你应该改进它并允许它重新打开。删除它并再次询问可能不受欢迎。
  • 感谢@Quentin 的建议。看到对这个话题的反应,我不相信这个问题会被重新打开。
  • 是的,分号是“可选的”。但是没有一种严肃的编程风格不强制要求它们。告诉你的同事习惯它。这将为他们在未来的(JS)工作中节省很多麻烦。我的意思是,当然,技术上,它节省了击键。 Whoop-tee-doo,您可以在最小化应用程序时使用节省的时间来调试应用程序!
  • 是的,分号是“可选的”让我过敏。我知道您可以在不使用 ; 的情况下编写 javascript 语句,但即便如此它也是错误。这不是万无一失的。不正确的使用它会导致错误。如果我看到一个没有分号的大型 javascript 代码文件,我会打喷嚏。此外,它会导致不一致,因为有些关键字必须有分号(请参阅规范)。所以,我很高兴你继续使用;,我希望你永远不会放弃并开始编程而不使用; .....

标签: javascript syntax automatic-semicolon-insertion


【解决方案1】:

是的; 就是您要找的。​​p>

【讨论】:

  • @RobbyCornelissen 问题是“是否有防止 ASI 的特殊字符”ASI 代表“自动分号插入”。 ; 将完成这项工作。
  • @RobbyCornelissen(开个玩笑)
  • 尽管您可能很有趣,但这个问题并没有回答问题,并且违反了 SO 的精神。也许很清楚这是一个笑话,所以那些真正试图找到答案的人(请记住,就像 OP 一样,他们也可能不喜欢无分号的代码库)确实会找到它。
  • @towc: Q: “是否有防止ASI的特殊字符” - A: “是的,; 就是你要找的东西。”。这是一个完全有效且正确的答案。
  • @towc IMM 最好的笑话是严肃的。如果有人需要这个 Q/A,他们真正需要的是一个分号。
【解决方案2】:

是的,它通过使用grouping operator () 存在。括号内不发生 ASI。

return (
    // expression
);

【讨论】:

  • 请注意,使用它来防止“ASI”是一种大规模的反模式。这是一个黑客。
  • 这只是一个语言功能,没有破解。
  • 关于这个话题的逆反心理很强烈,对此我深表歉意....
  • @NinaScholz:被滥用的语言功能仍然是 hack。
  • @Cerbrus,即使您不喜欢这个问题,这个答案也会回答它。您可以在答案中添加备注以表达您的不适,但这可以解决问题。我也在这个模式中使用了括号,你可能会发现它,因为你知道我所有的答案。
猜你喜欢
  • 2015-06-25
  • 1970-01-01
  • 1970-01-01
  • 2014-03-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-04
  • 1970-01-01
相关资源
最近更新 更多