可以在javascript中编写强类型实体类吗?

时间:2009-09-19 00:43:42

标签: javascript jquery visual-studio json

当我从服务器通过jQuery检索JSON实体并操纵客户端时,我希望能够通过Visual Studio intellisense查看其界面。所以,忽略这是否是一个愚蠢的想法,这有可能吗?

所以我想的是能够引用Entities.js,它将包含所有实体的定义,即:

Class Person
   String Name
   String Address
   String Telephone
Enc Class

那么当编写客户端javascript时,这些属性将通过intellisense可见。

我觉得这不可能吗?如果没有,是否可以通过枚举或类似的方式进行模拟?

2 个答案:

答案 0 :(得分:1)

您可以在代码中包含XML注释,Visual Studio 2008将识别为Intellisense“Hints”。

检查以下文章:

sample http://blogs.msdn.com/photos/webdevtools/images/1783721/original.aspx

答案 1 :(得分:0)

您可以将数据包装到javascript类中,即:

var someJson = { foo: 'foo', bar: 'bar' };

var MyClass = function(foo, bar) { this.foo = foo; this.bar = bar; }
MyClass.prototype = {
    foo: '',
    bar: ''
};

var someObj = new MyClass(someJson.foo, someJson.bar);

我不了解Visual Studio,但IntelliJ IDEA和Aptana应该能够很好地自动完成这种结构。

它还取决于IDE是否能够从某个地方确定变量的类型。如果将某个对象作为参数传递给函数,则IDE可能无法确定该类型是什么。这通常可以通过在JsDoc样式注释等中提供类型提示来辅助。

这些都是需要JsDoc提示或IDE的一些智能猜测的问题。根据我的经验,IntelliJ在这方面做得最好。

相关问题