繁体   English   中英

CoffeeScript-空间问题

[英]CoffeeScript - Issue with space

跟随CoffeeScript

if eachController.indexOf("Controller.js") isnt -1
  controller = require(controllersFolderPath + eachControllerName)
  controller.register server 

符合此JavaScript代码

if (eachController.indexOf("Controller.js") !== -1) {
  controller = require(controllersFolderPath + eachControllerName);
  controller.register(server);
}

但是,当在indexOf之后添加额外的空间时,!== -1成为indexOf的一部分。

if eachController.indexOf ("Controller.js") isnt -1
    controller = require(controllersFolderPath + eachControllerName)
    controller.register server

if (eachController.indexOf("Controller.js" !== -1)) {
    controller = require(controllersFolderPath + eachControllerName);
    controller.register(server);
}

我只是想知道它是否是我应该一直关心的错误或标准语法。

是的,如果您进行第二种形式的咖啡,将会猜出您的意思

if eachController.indexOf (("Controller.js") isnt -1)
    controller = require(controllersFolderPath + eachControllerName)
    controller.register server

if eachController.indexOf ("Controller.js") isnt -1
    controller = require(controllersFolderPath + eachControllerName)
    controller.register server

因此,您应该注意咖啡的灵巧性,这并非难事。(-:

我将完全取消括号“()”,并执行以下操作:

if -1 isnt eachController.indexOf "Controller.js"
  controller = require "#{controllersFolderPath}#{eachControllerName}"
  controller.register server

我还尝试利用字符串插值,即“#{controllersFolderPath}#{eachControllerName}”

一旦习惯了,就会变得更容易阅读。

您也可以尝试在'indexOf'部分之后添加额外的空格,您会看到coffee编译器会忽略它并且不会中断函数调用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM