2

オブジェクトをパラメーターとして受け取る 1 つの関数を使用して、ドキュメント内の任意の数の変数を更新できるようにしたいと考えています。私が欲しいもの:

<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"
})

<span id="firstname">John</span>最終結果は<span id="lastname">Doe</span>

これを達成する方法はありますか?そうでない場合、より良い代替手段はありますか?

RiotJS の self.update 関数に精通している方のために説明すると、基本的には、1 つの小さな関数のライブラリ全体を取り込むことなく、これを JavaScript で再作成しようとしています。

注:JQueryを含むライブラリなしでこれを行いたいです。

ありがとうございました!

4

1 に答える 1

4

不足しているのは、キーに関連付けられた値を取得することだけです。これは、 を実行して取得できます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/

于 2016-02-04T03:54:16.570 に答える