无法将参数传递为对象的属性名称

时间:2020-09-19 19:51:56

标签: javascript function object parameters properties

const persons = {
    name: 'David',
    age: 40
};

const myFunction = (x) => {
    console.log(persons.x)
};

myFunction('name');

如果我传递myFunction('name'),我希望它显示'David'。
如果我通过myFunction('age'),我希望它能打印40。

但是现在它打印未定义。任何人都有解决方案吗?

1 个答案:

答案 0 :(得分:-1)

const persons = {
    name: 'David',
    age: 40
};

const myFunction = (x) => {
    console.log(persons[x])
};

myFunction('name');

如果要使用变量,则必须使用方括号符号(object[property_name])代替点符号(object.property_name)。