例を通して、arguments と argument.callee の具体的な違いを理解しましょう: コードは次のとおりです: コードをコピーします コードは次のとおりです: <br> function check(args){ var ac = args.length; <br> var ex = args.callee.length; <br> document.write("ac:" ac '<br>'); document.write("ex:" ex '<br>'); If (ac != ex) { <br> document.write("引数の数が間違っています: 期待される値: " ex "; 実際に渡されました" ac '<br>'); 関数 f(x, y, z) { <br> (引数) をチェックします。 Document.write(x y z); </スクリプト> <br> <br><br> <br>呼び出し方法: <br> <br><br><br><br>コードをコピー<br> </div> コードは次のとおりです:<p><br></p> <div class="codetitle"> <input name="wr" type="button" value="call" onclick="f(1,2)" /> <span><a style="CURSOR: pointer" data="88707" class="copybut" id="copybut88707" onclick="doCopy('code88707')"> 実行後の結果は次のとおりです: <u> </u></a></span> </div>コードをコピー<div class="codebody" id="code88707"> <br><br> コードは次のとおりです:</div> <br><br> ac:2<div class="codetitle"> 例:3<span> 引数の数が間違っています: 予想される値: 3 が実際に渡されました<a style="CURSOR: pointer" data="66681" class="copybut" id="copybut66681" onclick="doCopy('code66681')"> なな<u> </u></a> </span>私の理解: </div> <div class="codebody" id="code66681">arguments は呼び出しオブジェクト、つまりこのメソッドを呼び出すオブジェクトです<br> argument.callee は現在のオブジェクトであり、実際には現在実行されている関数オブジェクト <br> を返します。 この例を通して、<br> がわかります。 引数は実際には関数 "f(1,2)" を参照しています <br> argument.callee は実際には「関数 f(x,y,z){}」を参照します<br> </div>