JavaScript 代码如下:function Class1() { // var _prop1 = "你好"; // 删去变量声明语句 // Class1.prototype.MSG_ERROR = "出错了"; // 删去变量声明语句
alert(_prop1); // 在编辑器里会有下划线提示:未声明的变量。
alert(Class1.prototype.MSG_ERROR); // 在编辑器没有下划线提示!给调试带来极大困扰!
}用 var 声明的变量,删去声明语句后,引用时编辑器里会正常给出下划线提示。用原型方式定义的变量,删去定义语句后中,引用时编辑器没有给出任何异常提示,给调试带来极大困扰!然而诡异的是,在另一台电脑上,不管是在 IntelliJ 软件、还是在 WebStorm 软件中,这种情况都会给出下划线提示。为何同样的软件,在另一台电脑上,就不会给出提示了呢?百思不得其解!
1 回答
翻翻过去那场雪
TA贡献2065条经验 获得超14个赞
把光标放置在下划线处,左边会浮现一个提示标记(也可以快捷键调出,但是我不知道 win 下的快捷键,自己查一下),于是你就知道这个错误的具体情况了,同时各种错误都能被单独打开关闭,这也是你发现有的有有的没有的原因。
Webstorm 的定制性是很强的,包括各种错误提示。对于 Javascript 而言,你选择的语言版本或者是否开启了 linting 等等都会影响错误的提示方式及数量。
另外,一般来讲是不会在原型上定义属性的,因为原型是共享的,定义属性会使得所有的实例访问同一个内存地址,这就失去了继承的意义了。原型还是以定义方法为主,再次也是定义属性的 getter/setter 来保证属性的动态性。
添加回答
举报
0/150
提交
取消