JavaScriptの主なループとは何ですか

醉折花枝作酒筹
リリース: 2021-06-15 14:29:08
オリジナル
3086 人が閲覧しました

JavaScript の主なループは次のとおりです: 1. for ループ; 2. "for...in" ループ; 3. map メソッド; 4. forEach ループ; 5. filter フィルター ループ; 6. Object.keysオブジェクトのトラバースプロパティ。

JavaScriptの主なループとは何ですか

このチュートリアルの動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。

プロジェクト開発では、どのフレームワークに基づいているかに関係なく、データ処理が必要であり、データ処理はさまざまなトラバーサル ループから切り離すことができません。 JavaScript でループする方法はたくさんありますが、ここでは一般的な JS ループをいくつか紹介します。

1. for ループ

for ループは、最も一般的で最もよく使用されるループ走査方法であるため、可読性とメンテナンスの容易さは比較的劣りますが、この問題から抜け出すことができます。時間のループ。

let arr = [1,2,3,4,5,6,7]for(let i = 0;i<arr.length;i++){
  console.log(arr[i])
}// 1,2,3,4,5,6,7
ログイン後にコピー

2. for...in

for...in ループは主にオブジェクトの走査を目的としており、オブジェクトの対応するキー値を取得したい場合は for を使用します。 ..in それはさらに便利です

//针对对象来说  
//任何对象都继承了Object对象,或者其它对象,继承的类的属性是默认不可遍历的,
//for... in循环遍历的时候会跳过,但是这个属性是可以更改为可以遍历的,那么就会造成遍历到不属于自身的属性。
//结合使用hasOwnProperty方法,在循环内部判断一下,某个属性是否为对象自身的属性。否则就可以产生遍历失真的情况。
let obj = {name: &#39;xiaohua&#39;, sex: &#39;male&#39;, age: &#39;28&#39;}
for(let key in obj){
    if(obj.hasOwnProperty(key)){
        console.log(obj[key])
    }
}
ログイン後にコピー

3.map

map メソッドは、配列のすべてのメンバーを順番にパラメータ関数に渡し、各実行の結果をパラメータ関数に返します。新しいアレイ。ループを途中で停止することはできず、すべてのメンバーが常に走査されます。

let arr = [1,2,3,4,5]
let arr2 = arr.map((n)=>{
      return n+1
})
console.log(arr2) // [2,3,4,5,6]
console.log(arr) // [1,2,3,4,5]
ログイン後にコピー

map メソッドは関数をパラメーターとして受け取ります。この関数が呼び出されると、map メソッドは現在のメンバー、現在の位置、配列自体の 3 つのパラメーターを関数に渡します。

let arrObj = [{
    id: 1,
    name: &#39;xiaohua&#39;
},{
    id:2,
    name: &#39;xiaomin&#39;
},{
    id:3,
    name: &#39;xiaobai&#39;
}]
arrObj.map((item,index,arr)=>{
    console.log(arr) // arrObj
    console.log(index)  // 0 1 2
    console.log(item.name) // xiaohua xiaomin xiaobai
})
ログイン後にコピー

4. forEach

forEach を使用する方法は、forEach メソッドが値を返さず、データを操作するためにのみ使用される点を除いて、map を使用する方法と似ています。ループを途中で停止することはできません。常にすべてのメンバーを走査します

let arrObj = [{
    id: 1,
    name: &#39;xiaohua&#39;
},{
    id:2,
    name: &#39;xiaomin&#39;
},{
    id:3,
    name: &#39;xiaobai&#39;
}]
arrObj.forEach((item,index,arr)=>{
    console.log(arr) // arrObj
    console.log(index)  // 0 1 2
    console.log(item.name) // xiaohua xiaomin xiaobai
})
ログイン後にコピー

5。フィルター フィルター ループ

フィルター メソッドは、配列メンバーと条件を満たすメンバーをフィルターするために使用されます。新しい配列を作成して返します。パラメータは関数であり、配列のすべてのメンバーが順番に関数を実行し、戻り結果が true になったメンバーが新しい配列を作成して返します。このメソッドは元の配列を変更しません。

let arrObj = [{
    id: 1,
    name: &#39;xiaohua&#39;
},{
    id:2,
    name: &#39;xiaomin&#39;
},{
    id:3,
    name: &#39;xiaobai&#39;
}]
let arr2 = arrObj.filter((item,index,arr)=>{
    return (item.name === &#39;xiaohua&#39;)
})
console.log(arr2)  // [{id:1,name:&#39;xiaohua}]
ログイン後にコピー

ECMAScirpt5 の Array クラスのフィルター メソッドは、すべての「false」タイプの要素 (false、null、未定義、0、NaN、または空の文字列) を削除するために使用されます。

let arr = [3, 4, 5, 2, 3, undefined, null, 0, ""];
let arrNew = arr.filter(Boolean);
console.log(arrNew)  //  [3, 4, 5, 2, 3]
ログイン後にコピー

Booleanは、配列内の要素を走査し、要素の true または false の型に応じて true または false を返す関数です。

6. Object.keys は、オブジェクトのプロパティを走査します

Object .keys メソッドのパラメータはオブジェクトであり、配列を返します。この配列のメンバーはすべてオブジェクト自体のプロパティ名 (継承されていない) であり、列挙可能なプロパティのみが返されます。

let obj = {name: &#39;xiaohua&#39;, sex: &#39;male&#39;, age: &#39;28&#39;}
console.log(Object.keys(obj))
// ["name", "sex", "age"]
ログイン後にコピー

オブジェクトが空のオブジェクトかどうかを判断するには、Object.keys(obj).length>0

[推奨学習: JavaScript 上級チュートリアル]

以上がJavaScriptの主なループとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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