• 对象是具有一些特殊特性的关联数组。
  • 它们存储属性(键值对),其中:
    • 属性的键必须是字符串或者 symbol(通常是字符串)。
    • 值可以是任何类型。
  • 我们可以用下面的方法访问属性:
    • 点符号: obj.property
    • 方括号 obj["property"],方括号允许从变量中获取键,例如 obj[varWithKey]
  • 其他操作:
    • 删除属性:delete obj.prop
    • 检查是否存在给定键的属性:"key" in obj
    • 遍历对象:for(let key in obj) 循环。
  • JavaScript 的对象有一个需要注意的特性:能够被访问任何属性。即使属性不存在也不会报错!读取不存在的属性只会得到 undefined

练习题

<script>

  let salaries = {
  John: 100,
  Ann: 160,
  Pete: 130
  }

  //写一段代码求出我们的工资总和,将计算结果保存到变量 sum。从所给的信息来看,结果应该是 390。
  //如果 salaries 是一个空对象,那结果就为 0。

  let sum = 0;

  for (let key in salaries){
    sum+= salaries[key];
  }
  
  alert(sum)
  

</script>
let menu = {
  width: 200,
  height: 300,
  title: "My menu"
};

//创建一个 multiplyNumeric(obj) 函数,把 obj 所有的数值属性值都乘以 2。

function multiplyNumeric(obj) {
  for (let key in obj) {
    if (typeof obj[key] == 'number') {
      obj[key] *= 2;
    }
  }
}

<
Previous Post
0126 Feels like I’m stuck
>
Next Post
0127 Started changing