0

関数とその関数の呼び出し元があるとしましょう

function baz(){
    myVar = null;
    foo(myVar);
}

function foo(bar){
    //do stuff
}

パラメータの検証はどこで行うべきですか?

かもしれない

function baz(){
    myVar = null;
    if(myVar != null){
        foo(myVar);
    }
}

またはそれは可能性があります

function foo(bar){
    if(myVar == null) return null;

    //do stuff
}

何が良いですか?または、状況に応じて、いつ何を使用すればよいですか?

おそらく、これの延長は、いつやるべきかということでもあります

myVar['key'] = myFunc();
function myFunc(){
   return x;
}

myFunc();
function myFunc(myVar){
    myVar['key'] = x;
}
4

1 に答える 1

0

それは非常に依存しています。高速化のために実装している場合は、検証の選択をユーザーに委ねることを検討することをお勧めします。安定性のために実装している場合は、関数の一部として検証することをお勧めします。

配列と push() 関数が検証することを想像してください。この関数をゲームで 60 FPS でフレームごとに数百回使用することを想像してみてください。1 秒あたりの呼び出しの場合、これは 6000 を超える追加です。それは問題になるのに十分な数です。

于 2013-10-21T16:51:57.700 に答える