ホームページ  >  記事  >  ウェブフロントエンド  >  Function.prototype.call.apply と使用状況分析の組み合わせ example_javascript スキル

Function.prototype.call.apply と使用状況分析の組み合わせ example_javascript スキル

WBOY
WBOYオリジナル
2016-05-16 17:30:271190ブラウズ

昨日、インターネットで非常に興味深い JS の面接の質問を見つけたので、同僚とそれについて話し合いました。最初は非常にわかりにくいと思いましたが、理解すると、突然理解できるようになりました。シンプルに皆さんとシェアしたいと思います!
質問は次のとおりです: var a = Function.prototype.call.apply(function(a){return a;}, [0,4,3]);alert(a);
分析手順は次のとおりです。
1. Function.prototype.call を全体として扱います。 call メソッドはブラウザによって実装されるローカル メソッドであり、関数型 var a = (Function.prototype.call ).apply(function(a){return a;}, [0,4,3]);
2. obj.fun(args) に相当します。この 1 つのステップが重要なポイントであり、理解する必要があります。
(function(a){return a;}).apply(0,[4,3])
(function(a){return a;}).call(0,4,3)

3. このステップでは、a が 4 であることは明らかであり、alert の結果は 4 です。

この質問のわかりにくい点は、理解すると Function.prototype.call です。 、わかります!

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。