ECMAScript5_javascript スキルの新しい Array メソッドの詳細な例
ECMAScript5 は、一連の新しい API インターフェイスを提供します。これらのインターフェイスのほとんどは、IE9、Chrome、FirFor のすべてでサポートされています。また、一部の API は、すべてのブラウザーでサポートされていません。サポートされているほとんどの API のみを紹介します。新しい API を使用すると、元の JavaScript スタイルを維持しながら、非常に信頼性の高いクラスを設計できます。
ECMAScript5 標準は、2009 年 12 月 3 日にリリースされました。これは、既存の Array 配列操作を改善するいくつかの新しいメソッドをもたらします。 (互換性に注意してください)
ES5 には、合計 9 つの Array メソッドがあります: http://kangax.github.io/compat-table/es5/
Array.prototype.indexOf Array.prototype.lastIndexOf Array.prototype.every Array.prototype.some Array.prototype.forEach Array.prototype.map Array.prototype.filter Array.prototype.reduce Array.prototype.reduceRight
そのうちの 7 つのメソッドを以下に示します。最初の 5 つのメソッドは非常に一般的で、多くの開発者によって使用されています。
1.indexOf()
var arr = ['apple', 'orange', 'pear'], found = false; // 未使用 for (var i = 0, l = arr.length; i < l; i++) { if (arr[i] === 'orange') { found = true; } } console.log("found:", found); // ==> found: true // 使用后 console.log("found:", arr.indexOf("orange") != -1); // ==> found: true
2. フィルター()
filter() を使用しない場合:
var arr=[{"name":"apple", "count": 2},{"name":"orange", "count": 5},{"name":"pear", "count": 3},{"name":"orange", "count": 16},] var newArr = []; for (var i = 0; i < arr.length; i++) { if (arr[i].name === "orange") { newArr.push(arr[i]); } } console.log("Filter results:", newArr);
が使用した filter():
var newArr = arr.filter(function(item) { return item.name === "orange"; }); console.log("Filter results:", newArr);
3.forEach()
var arr = [1, 2, 3, 4, 5, 6, 7, 8]; // 使用for循环 for (var i = 0, l = arr.length; i < l; i++) { console.log(arr[i]); } // 使用forEach循环 arr.forEach(function(item, index) { console.log(item); });
4. マップ()
var oldArr = [{first_name: "Colin",last_name: "Toh"}, {first_name: "Addy",last_name: "Osmani"}, {first_name: "Yehuda",last_name: "Katz"}]; function getNewArr() { var newArr = []; for (var i = 0; i < oldArr.length; i++) { var item = oldArr[i]; item.full_name = [item.first_name, item.last_name].join(" "); newArr[i] = item; } return newArr; } var personName = getNewArr(); personName.forEach(function(item, index) { console.log(item); }) /****输出结果: Object {first_name: "Colin", last_name: "Toh", full_name: "Colin Toh"} Object {first_name: "Addy", last_name: "Osmani", full_name: "Addy Osmani"} Object {first_name: "Yehuda", last_name: "Katz", full_name: "Yehuda Katz"} ****/
map() メソッドを使用します:
function getNewArr() { return oldArr.map(function(item, index) { item.full_name = [item.first_name, item.last_name].join(" "); return item; }) } var personName = getNewArr(); personName.forEach(function(item, index) { console.log(item); }) /****输出结果: Object {first_name: "Colin", last_name: "Toh", full_name: "Colin Toh"} Object {first_name: "Addy", last_name: "Osmani", full_name: "Addy Osmani"} Object {first_name: "Yehuda", last_name: "Katz", full_name: "Yehuda Katz"} ****/
5.reduce()
を蓄積します。
var arr = ["apple", "orange", "apple", "orange", "pear", "orange"]; function getWordCnt() { var obj = {}; for (var i = 0; i < arr.length; i++) { var item = arr[i]; obj[item] = (obj[item] + 1) || 1; } return obj; } console.log(getWordCnt()); // 输出结果: // Object {apple: 2, orange: 3, pear: 1}
reduce() 使用後:
var arr = ["apple", "orange", "apple", "orange", "pear", "orange"]; function getWordCnt() { return arr.reduce(function(prev, next) { prev[next] = (prev[next] + 1) || 1; return prev; }, {}); } console.log(getWordCnt()); // 输出结果: // Object {apple: 2, orange: 3, pear: 1}
6, array.some(callback[, thisObject]); callback: 特定の要素をテストするために使用される関数。
thisObject: オブジェクトは実行コールバックとして使用されます。
var scores = [45, 60, 70, 65, 95, 85]; var current = 60; function passed(score) { return score > current; } console.log(scores.some(passed)); // == > true
7. array.every(callback[, thisObject]); callback : 各要素をテストするために使用されます。 thisObject: オブジェクトは実行コールバックとして使用されます。
var scores = [45, 60, 70, 65, 95, 85]; var current = 60; function passed(score) { return score > current; } console.log(scores.every(passed)); // == > false

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック

JavaScript文字列置換法とFAQの詳細な説明 この記事では、javaScriptの文字列文字を置き換える2つの方法について説明します:内部JavaScriptコードとWebページの内部HTML。 JavaScriptコード内の文字列を交換します 最も直接的な方法は、置換()メソッドを使用することです。 str = str.replace( "find"、 "置換"); この方法は、最初の一致のみを置き換えます。すべての一致を置き換えるには、正規表現を使用して、グローバルフラグGを追加します。 str = str.replace(/fi

それで、あなたはここで、Ajaxと呼ばれるこのことについてすべてを学ぶ準備ができています。しかし、それは正確には何ですか? Ajaxという用語は、動的でインタラクティブなWebコンテンツを作成するために使用されるテクノロジーのゆるいグループ化を指します。 Ajaxという用語は、もともとJesse Jによって造られました

記事では、JavaScriptライブラリの作成、公開、および維持について説明し、計画、開発、テスト、ドキュメント、およびプロモーション戦略に焦点を当てています。

この記事では、ブラウザでJavaScriptのパフォーマンスを最適化するための戦略について説明し、実行時間の短縮、ページの負荷速度への影響を最小限に抑えることに焦点を当てています。

この記事では、ブラウザ開発者ツールを使用した効果的なJavaScriptデバッグについて説明し、ブレークポイントの設定、コンソールの使用、パフォーマンスの分析に焦点を当てています。

マトリックスの映画効果をあなたのページにもたらしましょう!これは、有名な映画「The Matrix」に基づいたクールなJQueryプラグインです。プラグインは、映画の古典的な緑色のキャラクター効果をシミュレートし、画像を選択するだけで、プラグインはそれを数値文字で満たされたマトリックススタイルの画像に変換します。来て、それを試してみてください、それはとても面白いです! それがどのように機能するか プラグインは画像をキャンバスにロードし、ピクセルと色の値を読み取ります。 data = ctx.getimagedata(x、y、settings.greasize、settings.greasize).data プラグインは、写真の長方形の領域を巧みに読み取り、jQueryを使用して各領域の平均色を計算します。次に、使用します

この記事では、jQueryライブラリを使用してシンプルな画像カルーセルを作成するように導きます。 jQuery上に構築されたBXSLiderライブラリを使用し、カルーセルをセットアップするために多くの構成オプションを提供します。 今日、絵のカルーセルはウェブサイトで必須の機能になっています - 1つの写真は千の言葉よりも優れています! 画像カルーセルを使用することを決定した後、次の質問はそれを作成する方法です。まず、高品質の高解像度の写真を収集する必要があります。 次に、HTMLとJavaScriptコードを使用して画像カルーセルを作成する必要があります。ウェブ上には、さまざまな方法でカルーセルを作成するのに役立つ多くのライブラリがあります。オープンソースBXSLiderライブラリを使用します。 BXSLiderライブラリはレスポンシブデザインをサポートしているため、このライブラリで構築されたカルーセルは任意のものに適合させることができます

データセットは、APIモデルとさまざまなビジネスプロセスの構築に非常に不可欠です。これが、CSVのインポートとエクスポートが頻繁に必要な機能である理由です。このチュートリアルでは、Angular内でCSVファイルをダウンロードおよびインポートする方法を学びます
