ほとんどのサイトでは、Function.argumentsのプロパティとしての「callee」は推奨されていません。しかし、いくつかのサイトでは、さらに進んで、Functions.argumentの全体が廃止されたと言っています。 http://aptana.com/reference/api/Arguments.htmlルーチンが水中で死んでいる場合は、なぜ呼び出される人だけ言及するのですか?私はちょうど「引数」を発見し、それは、例えば非常に便利なようだ:http://hungred.com/how-to/secret-arguments-array-javascript/Javascript:引数の配列は非推奨ですか?
28
A
答えて
44
Function.arguments
は非推奨ですが、それは、関数内でのみ利用可能ですバニラarguments
オブジェクトの非推奨です。 (例えば、x = theFunc.arguments[i];
の代わりにx = arguments[i];
を使用)
受信した序数引数にアクセスするための好ましい方法です。
1
calleeは廃止されましたが、引数は多くのアプリケーションで使用されています。引数が非難されるかどうかは分かりません。関数(params)内に定義されていない場合でも、関数のすべてのパラメータを取得するために使用することができます。
ほとんどの場合、私はjQueryプラグインを開発するときに使用しました。ような何か:
$.fn.tooltip = function(method) {
if (methods[method]) {
return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
} else if (typeof method === 'object' || ! method) {
return methods.init.apply(this, arguments);
} else {
$.error('Method ' + method + ' does not exist on jQuery.tooltip');
}
};
あなたが唯一の方法は、パラメータとして渡されますが、最初の内の引数は最初の値の後に分割されているかどうかを確認することができたよう。この方法で、関数名とこの関数で使用されるすべてのパラメーターを渡すことができます。
1
ありませんが、arguments配列が仕様の最新バージョン5.1で非推奨されていません(60ページを参照してください)。ただし、caller
オブジェクトは、コードがstrictモードでない場合にのみ使用できます。
6
Afaik arguments
は、機能のプロパティとして、で非難されています。 this MDN-link、またはthis one
関連する問題
- 1. sklearn:sklearn.preprocessing配列の非推奨警告
- 2. Rails 5: `Gem.paths =`へのパラメータの配列値は非推奨です
- 3. 関数ereg()は非推奨です
- 4. 'gtk_widget_override_font'は非推奨です
- 5. setTabSFromPagerAdapterは非推奨です
- 6. カメラは非推奨です
- 7. FragmentActivity.getSupportMediaController()は非推奨です
- 8. タイプギャラリーは非推奨です
- 9. AppInvite.AppInviteApi.getInvitation()は非推奨です
- 10. WakefulBroadcastReceiverは非推奨です
- 11. NSGregorianCalendarは非推奨です
- 12. ConnectivityManager.CONNECTIVITY_ACTIONは非推奨です
- 13. stringByAddingPercentEscapesUsingEncodingは非推奨です
- 14. getMap()は非推奨です
- 15. cell.imageは非推奨です
- 16. replaceGlyphAtIndexは非推奨です
- 17. GameObject.rendererは非推奨です
- 18. $ HADOOP_HOMEは非推奨です
- 19. AuthorizationExecuteWithPrivilegesは非推奨です
- 20. PlacePicker.getPlace()は非推奨です
- 21. ProgressDialogは非推奨です
- 22. livequeryは非推奨です
- 23. 'sharedDispatcher'は非推奨です
- 24. ConstantScoreRangeQueryは非推奨です
- 25. OnCameraChangeListener()は非推奨です
- 26. setBackgroundColorは非推奨です
- 27. 非推奨JavascriptのOS検出技術
- 28. sizeWithFont:constrainedToSize:lineBreakMode:iOS7では非推奨
- 29. 非推奨コード
- 30. ボンドコミュニケーションフレームワーク非推奨
ああ、それはそれを説明します!どうもありがとう。 –
これは意味があります。 Javascriptでマルチスレッド対応が必要な場合、そのようなグローバルなステートフルなオブジェクトは殺してしまいます。 –
'Function.arguments'はなぜ廃止されましたか?ネストした関数の中の親関数の引数に直接アクセスすることができます。これは 'arguments'オブジェクトではできないものです。 – Taurus