javascript - 正在做破坏吗?

标签 javascript html arrays object ecmascript-6

我有一个编码挑战,我肯定会做对,但挑战要求在继续前进之前需要考虑某些步骤。而且我似乎跳过了一个步骤,即从事件的目标中解构一个值(希望我说的是对的)

问题是通过解构将预期的事件参数获取到目标属性。

我的代码有错吗?

const displaySelectedUser = (event) => {
    var newcal = event.target.value;

    console.log(newcal);
    console.log((event.target.value));

    var user = getSelectedUser(newcal);

    var properties = Object.keys(user);

    console.log(properties);

    properties.forEach(prop => {
        const span = document.querySelector(`span[data-${prop}-value]`);

        if (span) {
            span.innerText = user[prop];
        }
    });
};

最佳答案

这没有错 - 但解构的唯一实际机会就在这里:

var newcal = event.target.value;

这样做:

var { target: { value: newcal } } = event;

因为您没有使用 event 的其他属性,所以您可以将它移到函数声明中:

const displaySelectedUser = ({ target: { value: newcal } }) => {...}

现在 newcal 已经在您的函数中定义为 event.target.value

关于javascript - 正在做破坏吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56031708/

相关文章:

javascript - React.JS this.state 未定义

javascript - 如何访问 JSON 中的数组并在 Jade 中迭代

javascript - jQuery 表单克隆,如何阻止值被复制

javascript - 尝试将服务注入(inject)组件

arrays - 用方括号解释函数指针参数

javascript - 如何将注释文本添加到 Highcharts 图表?

javascript - ReactJS MobX 和 react-router v4 问题与 url 历史

html - 文本区域中的文本颜色 Bootstrap

python - 如何编写与 scipy.optimize.minimize() 一起使用的多变量目标函数,以便也可以使用 matplotlib 绘制它?

PHP 数组 stdClass 对象 - 回显值