Heim  >  Artikel  >  Web-Frontend  >  Welche Arten von Javascript-Schleifenanweisungen gibt es?

Welche Arten von Javascript-Schleifenanweisungen gibt es?

青灯夜游
青灯夜游Original
2021-07-16 16:08:308694Durchsuche

Schleifenanweisungen umfassen: 1. for-Schleife; 3. while-Schleife; 6. forEach-Schleife; Filterschleife ;8. „Object.keys“ durchläuft die Eigenschaften des Objekts.

Welche Arten von Javascript-Schleifenanweisungen gibt es?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.

In der Projektentwicklung ist unabhängig davon, auf welchem ​​Framework sie aufbaut, eine Datenverarbeitung erforderlich, und die Verarbeitungsdaten können nicht von verschiedenen Durchlaufschleifen getrennt werden. Es gibt viele Möglichkeiten, in JavaScript eine Schleife durchzuführen. Hier sind einige gängige js-Schleifen.

1. for-Schleife

Die for-Anweisung wird hauptsächlich zum Ausführen einer Schleife verwendet, die die Anzahl der Ausführungen bestimmt. Die grundlegende Syntax der

for-Anweisung lautet wie folgt:

for([初始值表达式];[条件表达式];[增量表达式]){
   循环体语句;
}

Erklärung:

  • "Anfangswertausdruck": Legen Sie den Anfangswert für die Schleifenvariable fest;

  • "Bedingter Ausdruck": Als Basis für Sie können entscheiden, ob Sie in die Schleife eintreten möchten. Es handelt sich um einen beliebigen Ausdruck, im Allgemeinen handelt es sich jedoch um einen relationalen Ausdruck oder einen logischen Ausdruck, und sein Wert ist wahr oder falsch. Vor jeder Ausführung der Schleife wird der Wert des bedingten Ausdrucks beurteilt. Wenn der Wert wahr ist (der Wert ist wahr oder ungleich 0 oder nicht leer), wird die Schleifenanweisung ausgeführt. Andernfalls wird die Schleife verlassen und der Code nach der Schleifenanweisung ausgeführt ": Aktualisieren Sie den Wert der Schleifenvariablen basierend auf diesem Ausdruck.

  • Jeder der oben genannten 3 Ausdrücke kann weggelassen werden, es sollte jedoch beachtet werden, dass in for() nicht weggelassen werden kann. Wenn also alle drei Ausdrücke weggelassen werden, wird die for-Anweisung zu: for(;;){Loop Body Statement}. Zu diesem Zeitpunkt ist zu beachten, dass die Schleife in eine Endlosschleife eintritt, wenn im Schleifenkörper keine Anweisung zum Verlassen der Schleife vorhanden ist.

  • Beispiel:
     var sum = 0;
     for(var i = 1; i <= 100;i++){        //在for语句中使用var声明循环变量,使代码更简洁
         sum += i;
     }
     alert("1~100的累加和sum=" + sum);

2. for...in

Die for...in-Schleife dient hauptsächlich zum Durchlaufen von Objekten. Wenn Sie den entsprechenden Schlüsselwert des Objekts erhalten möchten, verwenden Sie for.. .in oder praktischer

var a = [1, 2, ,,,,,,true,,,,,,, "a",,,,,,,,,,,,,,,4,,,,,56,,,,,,"b"];  //定义数组
var b = [], num = 0;
for (var i = 0; i < a.length; i ++) {  //遍历数组
    if (typeof a[i] == "number")  //如果为数字,则返回该元素的值
        b.push(a[i]);
    num ++;  //计数器
}
console.log(num);  //返回42,说明循环了42次
console.log(b);  //返回[1,2,4,56]

3. While-Schleife

Die while-Anweisung ist die am häufigsten verwendete Schleifenanweisung. Sie wird häufig in Programmen verwendet, in denen Sie eine Schleife nur basierend auf Bedingungen ausführen müssen, ohne sich um die Anzahl der Schleifen zu kümmern Schleifen.

while 语句的基本语法如下:
while(条件表达式){
     循环体;
}
Beschreibung:

Bedingter Ausdruck: Es handelt sich um eine Schleifenkontrollbedingung, die in Klammern gesetzt werden muss. Es kann sich um einen beliebigen Ausdruck handeln, im Allgemeinen handelt es sich jedoch um einen relationalen Ausdruck oder einen logischen Ausdruck, und der Wert ist wahr oder FALSCH. Hinweis: Werte, die wahr, nicht 0 und nicht leer sind, sind alle wahre Werte, andernfalls sind sie falsche Werte.

  • Schleifenkörper: Stellt Operationen dar, die wiederholt ausgeführt werden müssen. Es kann sich um eine einfache Anweisung oder eine zusammengesetzte Anweisung handeln. Wenn es sich um eine einfache Anweisung handelt, können die geschweiften Klammern {} weggelassen werden, andernfalls müssen die geschweiften Klammern {} verwendet werden.

  • Wenn die while-Anweisung ausgeführt wird, wird zunächst der Wert des bedingten Ausdrucks beurteilt. Wenn er wahr ist, wird die Schleifenkörperanweisung ausgeführt, und dann wird der bedingte Ausdruck beurteilt Die Body-Anweisung wird weiterhin ausgeführt. Andernfalls wird die Anweisung ausgeführt, die auf die While-Anweisung folgt. Wenn der Wert des Ausdrucks bei der ersten Auswertung falsch ist (entweder falsch oder 0 oder null usw.), wird der Schleifenkörper kein einziges Mal ausgeführt.

  • Damit die While-Schleife normal endet, müssen im Schleifenkörper Anweisungen vorhanden sein, die die Schleifenbedingungen ändern, oder andere Anweisungen zum Beenden der Schleife Das heißt, der Schleifenkörper wird kontinuierlich ausgeführt.

Zum Beispiel verursacht die folgende Schleifenanweisung eine Endlosschleife.

var i=1,s=0;
whiel(i<=5){
    s+=i;      
}

Der Anfangswert von i im obigen Code ist 1. Da der Wert der Variablen i im Schleifenkörper nicht geändert wird, ist der Ausdruck ib05643b5bb0426d9697dc338eb8bae04{     console.log(arr) // arrObj     console.log(index)  // 0 1 2     console.log(item.name) // xiaohua xiaomin xiaobai })

七、filter过滤循环

filter方法用于过滤数组成员,满足条件的成员组成一个新数组返回。它的参数是一个函数,所有数组成员依次执行该函数,返回结果为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 类中的 filter 方法使用目的是移除所有的 ”false“ 类型元素  (falsenullundefined0NaN or an empty string):

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.

八、Object.keys遍历对象的属性

Object.keys方法的参数是一个对象,返回一个数组。该数组的成员都是该对象自身的(而不是继承的)所有属性名,且只返回可枚举的属性。

let obj = {name: 'xiaohua', sex: 'male', age: '28'}
console.log(Object.keys(obj))
// ["name", "sex", "age"]

判断一个对象是否是空对象,可以用Object.keys(obj).length>0

【推荐学习:javascript高级教程

Das obige ist der detaillierte Inhalt vonWelche Arten von Javascript-Schleifenanweisungen gibt es?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn