Array.prototype_javascript スキルの一般的なアプリケーション分析

WBOY
リリース: 2016-05-16 18:28:20
オリジナル
1047 人が閲覧しました
タイトル
次のステートメントの出力について説明してください:
コードをコピー コードは次のとおりです。 :

x = {shift:[].shift};
console.info(x.length); >正解した場合は、配列関数の一般的な応用をすでに理解していることになります。この質問を理解する前に、まず配列 (Array) のシフトの定義を理解する必要があります。

関連する手順は MDC で非常に明確に説明されています



コードをコピー
コード シフトは意図的に汎用的です。このメソッドは、配列に似たオブジェクトに呼び出したり、系列の最後を反映する長さプロパティを含まないオブジェクトに適用したりできます。
連続するゼロベースの数値プロパティは、意味のある方法で動作しない可能性があります


同時に、EMCAScript の定義では、長さプロパティの変更も定義されます。シフト操作のオブジェクト したがって、基本的に、上記の質問に対する答えは



であると理解できます。 コードをコピーします

コードは次のとおりです。 0 拡散思考
上記の質問がまだ理解できない場合は、Array.prototype の影響をより明確に説明できます。オブジェクトの長さを変更します。


コードをコピーします

明らかに、オブジェクトに length 属性が定義されている場合、shift は自動的に length 属性を追加します。そしてそれを 0 に設定します。

ここまで述べたところで、次の質問で何を出力するかは皆さんに考えてもらいましょう。



コードをコピー


コードは次のとおりです。明らかに、上記の質問はこの記事のタイトルはまだ説明できないかもしれません。汎用アプリケーションについては以前にも説明しましたが、ここでは主に「配列のような」操作のための Array メソッドの使用について説明します。


強制的に配列




コードをコピー
コードは次のとおりです:
データの反復




コードのコピー

コードは次のとおりです:
Array.prototype.forEach.call(arguments, function(i) { console.info(i); }); オブジェクトがrecursed, then exit 「従来の」for ステートメント、while ステートメント、およびその他のステートメントに加えて、Array の forEach 属性の使用を検討することもできます (IE では悲劇が起きることに注意してください)。 Array の forEach メソッドについては、ここで詳しく説明します。
その他の Array 拡張機能を使用すると、独自のアイデアを広げることができます。対応するブラウザに対応する Array の実装方法がない場合は、こちらを参照してください。

実際、Array メソッドだけでなく、多くのブラウザー ネイティブ オブジェクトのメソッドも、これらの機能を完全に使用してコードを明確にすることができます。
ネイティブ メソッドを使用する方が効率的です。
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!