2017-12-27 22 views
3

私はtypescriptですが学んでいると私は、コンパイル済みのjavascriptのは次のようになり、すべてのクラスのコメントを持っていることに気づいた:/ ** @class */Typescriptの/ ** @class * /は目的を持っていますか?

例:

var Student = /** @class */ (function() { 
    function Student(firstName, middleInitial, lastName) { 
     this.firstName = firstName; 
     this.middleInitial = middleInitial; 
     this.lastName = lastName; 
     this.fullName = firstName + " " + middleInitial + " " + lastName; 
    } 
    return Student; 
}()); 

私の質問は、このコメントんです任意の機能的な価値を持っているか、それとも構文的な砂糖ですか?また、それは機能を持っている場合、どのような機能ですか?

+0

ありがとうございました。私はすべての答えが正しいとマークしたいと思っていますが、Ryan'sを選んでいます。これは最も機能的な価値があると思うからです。かなり明白) –

答えて

6

これはso that minifiers can remove unused classesです。ミニレベルでは、クラス設定は潜在的に重要な副作用を持つもののように見えるので、コードの残りの部分がコードブロックを参照しない限り、コードブロックを安全に削除できることを示します。

4

コードを文書化する場合は、http://usejsdoc.org/tags-class.htmlにJSDocコメントを出力します。

この場合、タグはドキュメント生成プログラムに次の関数がコンストラクタであることを示します。

機能的な価値はなく、構文的な砂糖もありません。ドキュメントを生成する場合に備えてあります。これ以上何もない。

1

このコメントには、機能的な価値がありますか、それとも構文的な砂糖ですか?

コメントではないため、独自の構文構造ではないためです。

コメントは単純にJSDocです。 @エイミーの答えはそのためのリンクを持っています。

関連する問題