1. <!DOCTYPE html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>Document</title>
    6. </head>
    7. <body>
    8. <script type="text/javascript">
    9. // for-in 一般用来遍历对象, 也可以用来遍历数组
    10. // var obj = {
    11. name: "xiaoming",
    12. age: 8
    13. };
    14. for(var k in obj) {
    15. // 此处使用 点运算符,不能获取到相应的值:
    16. // . 的作用:访问对象的属性
    17. console.log("键为:" + k + ", 值为:" + obj[k]);
    18. }
    19. var arr = [1, 3, 5];
    20. for(var k in arr) {
    21. console.log("键为:" + k + ", 值为:" + arr[k]);
    22. }
    23. // in 运算符作用:
    24. // 就是判断 属性是否存在于对象中,如果存在,返回值为:true
    25. // 如果不存在,则为:false
    26. // 语法:属性 in 对象
    27. var obj = {
    28. name1: "jack",
    29. age: 9,
    30. abc: undefined
    31. };
    32. // 如果是name,要注意:window有name属性
    33. console.log("name1" in obj); // true
    34. console.log("age" in obj);
    35. console.log("age123" in obj);
    36. // 如果是对象中存在的成员或者是原型中的成员,此时,返回的结果就是 true
    37. console.log("toString" in obj);
    38. console.log(obj.toString());
    39. console.log("abc" in obj);
    40. // in运算符判断数组
    41. // 对于数组来说,索引号 就是属性
    42. var arr = [1];
    43. console.log("1" in arr); // false
    44. console.log("0" in arr); // true
    45. console.log(0 in arr); // true
    46. // 访问数组的成员:
    47. // 可以使用 数组索引 也可以使用 字符串
    48. console.log(arr[0]);
    49. console.log(arr["0"]);
    50. </script>
    51. </body>
    52. </html>