【问题标题】:JavaScript - Make a function to update variables by passing an object?JavaScript - 通过传递对象创建一个函数来更新变量?
【发布时间】:2016-05-13 13:01:10
【问题描述】:

我希望能够使用一个将对象作为参数的函数来更新文档中的任意数量的变量。我想要什么:

<span id="firstname"></span>
<span id="lastname"></span>

...

function updateStuff(obj) {
    for (var key in obj) {
        document.getElementById(key).innerHTML = valueAssociatedWithKey;
    }
}

...

updateStuff({
    firstname: "John",
    lastname: "Doe"
})

最终结果将有 &lt;span id="firstname"&gt;John&lt;/span&gt;&lt;span id="lastname"&gt;Doe&lt;/span&gt;

有没有办法做到这一点? 如果没有,有更好的选择吗?

对于那些熟悉 RiotJS's self.update function 的人来说,我实际上是在尝试在 JavaScript 中重新创建它,而不是为一个小函数拉入整个库。

注意:我想在没有任何库的情况下执行此操作,包括 JQuery。

谢谢!

【问题讨论】:

  • 你几乎写了所有东西,你所缺少的只是你可以通过object[property] 获取属性名称:)

标签: javascript html function object update-statement


【解决方案1】:

您所缺少的只是获取与键关联的值,您可以通过 obj[key] 获得。

例子:

function updateStuff(obj) {
    for (var key in obj) {
        document.getElementById(key).innerHTML = obj[key];
    }
}

updateStuff({
    firstname: "John",
    lastname: "Doe"
});

JSFiddle 演示:https://jsfiddle.net/xmhgxqj7/

【讨论】:

  • 哇,我不敢相信我没有看到。非常感谢。
猜你喜欢
  • 1970-01-01
  • 2023-02-23
  • 2015-07-06
  • 2019-08-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-29
  • 1970-01-01
相关资源
最近更新 更多