我确信有人会因为问这个问题而大喊大叫,但是这里有:在Javascript中,应对对象属性区分大小写这一事实的最佳策略是什么?如果我使用名为FavouriteDrink的属性创建一个对象,但后来我开始将其称为favouriteDrink,那么我可能会陷入混乱。
我不想在这里使用大型库,但是有没有办法定义对象,以便在某处定义FavouriteDrink,在Visual Studio 2012中,如果我能以某种方式进行语境化,某些intellisense将帮助我选择正确的属性名称我正在处理的对象?这只是我在这里思考的属性。
感谢。
答案 0 :(得分:3)
这不起作用
如果我查看您的代码并看到:
FavouriteDrink() {}
我想到的第一件事就是弹出这是一个构造函数而不仅仅是一个普通的函数
并通过查看以下内容
favouriteDrink() {}
我会告诉我这是一个正常的函数,我不能用它作为构造函数 - 不能用new
调用
以下是其他一些例子
first_name // variable
FIRST_NAME // uppercase variables shouldn't change
_first_name // local variable not intended to be used out of its scope
var FIRSTNAME = {} // name space
按照惯例说明单词如何分开是个好主意
请参阅此Code Conventions for the JavaScript Programming Language
对于你问题的其他部分,我正在使用VS 2012而我安装了JSEnhancements
我可以看到我的所有对象元素
答案 1 :(得分:-1)
JavaScript与Java和ActionScript 3共享以下约定。
在定义常量或永不改变的值时,将其用作变量名。
例如,myObject.NUM_TIMES_CLICKED = 2
可能是常量的不良候选者,因为它可能会发生变化。但是,myObject.APPLE_FRENCH_SPELLING = 'pomme'
在这里是合适的。
在定义不是constant
或class
的任何时使用此选项。您可以将此用于大多数事情,例如myObject.numTimesClicked
,myObject.myFunction()
,myObject.returnString
。
在定义定义“类”的函数时使用此选项,通常使用语法myObject.myClassInstance = new MyClass()
调用任何函数。请注意myClassInstance
在camel-case中是如何的,因为它是类的一个实例。但是,MyClass
是全部上限,因为它应该使用new.
您最初应该像这样定义类:myObject.MyClass = function(){};
答案 2 :(得分:-1)
WebStorm和Sublime Text是提供您正在寻找的代码智能的绝佳工具。
WebStorm开箱即用,但我的个人偏好是使用SublimeCodeIntel插件的Sublime Text。
话虽这么说,但最好是使用命名约定: