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 條評論)
    暫無評論

    返回頂部

    主站蜘蛛池模板: 国产精品被窝福利一区 | 国产精品99精品一区二区三区| 国产综合无码一区二区色蜜蜜| 日本福利一区二区| 国产嫖妓一区二区三区无码| 国产aⅴ一区二区| 一区二区三区无码高清视频| 国产伦精品一区二区三区视频猫咪 | 国产福利一区二区在线视频 | 高清无码一区二区在线观看吞精| 亚洲一区日韩高清中文字幕亚洲| 日韩精品无码一区二区三区四区| 精品人无码一区二区三区| 亚欧免费视频一区二区三区| 欧洲精品码一区二区三区| 日韩精品无码一区二区三区四区| 91午夜精品亚洲一区二区三区| 日本一区免费电影| 欧洲精品无码一区二区三区在线播放| 一区二区三区观看免费中文视频在线播放 | 高清精品一区二区三区一区| 国产在线一区二区三区av| 激情内射亚州一区二区三区爱妻| 精品人无码一区二区三区| 国产一区二区三区在线免费观看| 果冻传媒董小宛一区二区| 精品人妻无码一区二区三区蜜桃一| 乱中年女人伦av一区二区| 老熟女高潮一区二区三区| 福利一区在线视频| 色久综合网精品一区二区| 精品一区二区三区无码视频| 日韩精品一区二区亚洲AV观看| 欧洲精品码一区二区三区免费看 | 无码毛片一区二区三区中文字幕| 人妻天天爽夜夜爽一区二区| 区三区激情福利综合中文字幕在线一区亚洲视频1 | 无码喷水一区二区浪潮AV| 中文字幕一区二区免费| 国产伦精品一区二区三区在线观看 | 一区精品麻豆入口|