3

この(有効な)typescriptインターフェースに従うjavascript関数を書くことは可能ですか:

interface Foo{
    // constructor: 
    new (): string; 
}

つまり、 new 演算子で呼び出されたときに文字列を返すもの。たとえば、以下は機能しません。

function foo(){
    return "something";
} 
var x = new foo(); 
// x is now foo (and not string) whether you like it or not :) 
4

2 に答える 2

5

あなたはできるはずです:

function foo(){
    return new String("something");
} 
var x = new foo(); 

console.log(x);

任意のオブジェクトを返すことができますが、リテラルは機能しません。こちらを参照してください:これを返さないようにするために、コンストラクターはどのような値を返すことができますか?

于 2013-07-22T13:01:17.700 に答える