2017-03-15 160 views
1

有没有办法对jsdoc中带有特殊符号(如“+”)的属性进行正确描述?JSDoc:属性名称

例子:

/** 
    * @typedef {Object} TestObject 
    * @property {string} "id+name" 
    */ 

“ID +名” 似乎是在这种情况下,一个无效的语法。

回答

1

您需要根据文档查看@property是什么。基本上这是一个类中的变量名。对?在这种情况下,你应该遵循JS惯例的变量名称。这是对帖子的参考发现它... What characters are valid for JavaScript variable names?。显然,变量名“id + name”无效。以下是存取该属性...

TestObject.id+name // fail 
TestObject["id+name"] // would work for most of the browsers 

到JSDoc的创造者,他们是如何验证特定类型@property标签的性能问题。我坚信他们会指出变量名称的JS惯例。当然,你可能不会接受它作为你问题的答案。也许别人或JSDoc团队的某个人会提供更好的想法。

+1

顺便说一下,第二个是有效的访问者,这就是要点。 – shadeglare

+0

@shadeglare是的,你这样做可以适用于大多数浏览器,但JSDoc不喜欢它,所以当键入“TestObject”时,intellisense不会理解要显示的内容。不确定是否有这样的变量创建的原因。只是为了理论的问题?无论如何,感谢您指点,我会修改答案。 –