js对象中的数据定义想必都清楚,有些细节介绍一下:
键值对中的键,可以是字符类型,也可以不是,但实际上最后都会被转化成字符类型:
const p = {
name: "zhangsan", //写法1
"name": "zhangsan", //写法2
//上面两中写法是等价的,写法1最终会被转化为写法2
}
所以在访问对象中的数据时也有两种方法:
//访问对象中的数据:
const p = {
name: "zhangsan", //写法1
}
console.log(p.name) //点引用方法,注意p."name"的写法是错误的
console.log(p["name"]) //方括号查询方法,注意p[name]的写法是错误的
注意,在通过方括号[ ]访问对象的属性时,必须传入字符类型,也就是要加引号!
在函数中通过形参访问对象属性
当我们在函数中访问对象的属性是,如果想要用形参(变量)来访问对象,则只能使用方括号查询的方式访问,因为形参是一个变量,无法通过 对象名.变量的方式来访问。为什么?形参只能是基本数据类型,大多是字符串类型,如果通过.调用,就相当于p.”name”,这种写法是错误的!
//在函数中访问对象中的属性:
const p = {
name: "zhangsan", //写法1
}
function show(propName){
console.log(p[propName]) // 注意p.propName是错误的,因为这相当于是 p."propName"
}
本章比较重要,也比较细节,注意记忆。