JavaScript for#8230;in 循環含代碼

    JavaScript for…in 循環

    for...infor 循環一樣,也可以用于遍歷數組和對象,但它們的用法和語法上是有所不同的。愛掏網 - it200.com

    我們可以使用 for...in 循環來遍歷對象的屬性。愛掏網 - it200.com

    下面是一個簡單的例子:

    var obj = { a: 1, b: 2, c: 3 };
    
    for (var prop in obj) {
        console.log(`obj.{prop} ={obj[prop]}`);
    }
    // 輸出:obj.a = 1
    //       obj.b = 2
    //       obj.c = 3
    

    在這個例子中,我們定義了一個名為obj的對象,并使用for...in循環來遍歷它的屬性。愛掏網 - it200.com我們定義了一個變量prop來代表對象的屬性名稱,并使用這個變量來輸出屬性名及其對應的值。愛掏網 - it200.com

    請注意,for...in 循環不僅僅可以遍歷對象的自有屬性,還可以遍歷從原型鏈繼承而來的屬性。愛掏網 - it200.com因此,我們可以在循環體內使用 hasOwnProperty 來檢測一個屬性是否是對象的自有屬性。愛掏網 - it200.com

    下面是一個帶有原型的例子:

    var Person = function() {
        this.name = 'John Doe';
        this.age = 25;
    };
    
    Person.prototype.gender = 'male';
    
    var john = new Person();
    
    for (var prop in john) {
        if (john.hasOwnProperty(prop)) {
            console.log(`john.{prop} ={john[prop]}`);
        }
    }
    // 輸出:john.name = John Doe
    //       john.age = 25
    

    在這個例子中,我們定義了一個名為Person的構造函數,并在它的原型上定義了一個名為gender的屬性。愛掏網 - it200.com

    我們創建了一個名為john的對象,它繼承了Person的屬性和原型,包括它的gender屬性。愛掏網 - it200.com

    我們使用for...in循環來遍歷john對象的屬性,并通過hasOwnProperty方法來檢測這些屬性是否是對象的自有屬性。愛掏網 - it200.com

    請注意,for...in循環中的變量名并沒有什么特殊的含義。愛掏網 - it200.com我們可以將它們命名為任何我們喜歡的變量名。愛掏網 - it200.com

    遍歷數組

    我們也可以使用for...in循環來遍歷數組。愛掏網 - it200.com但是需要注意的是,for...in循環會遍歷數組中所有可枚舉的屬性,包括數組的原型鏈上的屬性,這可能會導致一些意外的結果。愛掏網 - it200.com

    下面是一個例子:

    var arr = ['a', 'b', 'c'];
    
    Array.prototype.foo = 'd';
    
    for (var prop in arr) {
        console.log(`arr.{prop} ={arr[prop]}`);
    }
    // 輸出:arr.0 = a
    //       arr.1 = b
    //       arr.2 = c
    //       arr.foo = d
    

    在這個例子中,我們定義了一個名為arr的數組,并在Array的原型上定義了一個名為foo的屬性。愛掏網 - it200.com然后我們使用for...in循環來遍歷數組arr中的屬性,并輸出它們的值。愛掏網 - it200.com

    請注意,for...in循環遍歷的是數組的索引,也就是它的數字屬性。愛掏網 - it200.com如果數組中有非數字的屬性,例如 foo 屬性,它也會被遍歷到。愛掏網 - it200.com

    因此,雖然我們可以使用 for...in循環來遍歷數組,但我們仍然需要小心使用它。愛掏網 - it200.com

    結論

    for...in循環是一個用于遍歷對象屬性的方便方法,但不適合用于遍歷數組。愛掏網 - it200.com同時還要注意它會遍歷對象原型鏈上的屬性,需要正確地使用 hasOwnProperty 方法來判斷屬性是否是對象的自有屬性。愛掏網 - it200.com

    聲明:所有內容來自互聯網搜索結果,不保證100%準確性,僅供參考。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。
    發表評論
    更多 網友評論0 條評論)
    暫無評論

    返回頂部

    主站蜘蛛池模板: 日本一区二区三区四区视频| 精品一区二区三区免费毛片爱| 色久综合网精品一区二区| 无人码一区二区三区视频| 国产福利一区二区三区在线视频| 久久毛片免费看一区二区三区 | 性色AV一区二区三区无码| 亚洲AV综合色一区二区三区| 婷婷国产成人精品一区二| 国产精品久久久久一区二区| 亚洲a∨无码一区二区| 国产对白精品刺激一区二区| 久久精品免费一区二区三区 | 日韩一区二区视频在线观看| 伊人久久精品无码av一区| 丝袜无码一区二区三区| 久久精品综合一区二区三区| 国产成人无码精品一区在线观看| 国产精品免费视频一区| 国产无吗一区二区三区在线欢| 色综合视频一区中文字幕| 一本大道在线无码一区| 亚洲日韩AV无码一区二区三区人| 99久久综合狠狠综合久久一区| 亚洲一区二区三区首页| 亚洲一区免费视频| 亚欧在线精品免费观看一区| 国产乱码一区二区三区四| 学生妹亚洲一区二区| 国产一区二区好的精华液| 国产伦精品一区二区三区视频小说| 精品国产一区二区三区久| 日韩精品一区二区三区不卡| 久久精品无码一区二区三区日韩 | 秋霞日韩一区二区三区在线观看 | 亚洲色精品aⅴ一区区三区| 国产无线乱码一区二三区 | 丰满岳乱妇一区二区三区| 国产成人精品一区二三区在线观看 | 极品少妇一区二区三区四区| 国产一区二区在线观看麻豆|