1. 程式人生 > >javascript in 運算子

javascript in 運算子

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>in</title>
</head>

<body>
    <script>
        // let obj = {
        //     name: "xiaoming",
        //     age: 8
        // };
        // for(let k in obj) {
        //     console.log(k, obj[k]);
        // }
        // // name xiaoming
        // // age 8
        //
        // let arr = [1, 3, 5];
        // for(let k in arr) {
        //     console.log(k, arr[k]);
        // }
        // // 0 1
        // // 1 3
        // // 2 5

        // in 運算子作用:
        // 就是判斷 屬性是否存在於物件中,如果存在,返回值為:true
        // 如果不存在,則為:false
        // 語法:屬性 in 物件
        let obj = {
            name1: "jack",
            age: 9,
            abc: undefined
        };
        console.log("name1" in obj);  // true
        console.log("age" in obj);  // true
        console.log("abc" in obj);  // true
        console.log("name" in obj);  // false

        // 如果是物件中存在的成員或者是原型中的成員,此時,返回的結果就是 true
        // console.log("obj:", obj);
        // console.log("toString" in obj);  // true
        // console.log(obj.toString());
        // console.log("abc" in obj);  // true


        // in運算子判斷陣列
        // 對於陣列來說,索引號 就是屬性
        // let arr = [1];
        // console.log("1" in arr); // false
        // console.log("0" in arr); // true
        // console.log(0 in arr); // true
        // console.log(arr["0"]);  // 1
        // console.log(arr[0]);  // 1

        // 訪問陣列的成員:
        // 可以使用 陣列索引 也可以使用 字串
        // console.log(arr[0]);
        // console.log(arr["0"]);
    </script>
</body>

</html>