2016-09-12 6 views
0

Я не могу передать свойство объекта fullName в качестве параметра функции setData.JS передать свойство объекта как параметр функции

Функция setData должна вызывать после ввода некоторого значения в модальное окно.

Я хочу установить value на user.fullName используя функцию setData.

Пример объекта user = { fullName: "Full Name", position: "Manager" }

function setData (data) { 
    var user, 
    value = prompt("Value", ""); 

    if (localStorage.getItem("user")) { 
    user = JSON.parse(localStorage.getItem("user")); 
    } 

    user.data = value; // user.fullName = value; - as an example 

    if (value) { 
    localStorage.setItem("user", JSON.stringify(user)); 
    location.reload(); 
    } 
} 

document.getElementById("full-name-button").onclick = function() { 
    setData("fullName"); 
}; 

document.getElementById("position").onclick = function() { 
    setData("position"); 
}; 

Помоги мне, как передать свойство объекта, потому что я не знаю, как это сделать.

ответ

0

Есть два способа присвоения свойств объекта.

«статический» путь (вы знаете имя свойства): user.fullName = "Bob";

«динамического» способом (имя свойства задается выражением во время выполнения): user['fullName'] = "Bob";

2

Для использования во время выполнения определенного имени свойства, используйте скобки обозначение, а не точка обозначения:

user[data] = value; 
Смежные вопросы