如何重新分配对象中的变量?
How does one reassign variables in an object?
对于我正在拍摄的 class,我需要将对象的属性重新分配给 "Unknown"。这是示例问题:
//In the function below, "person" will be passed in as an object that represents a person with properties such as name, age, gender, etc.
//Loop through all the properties of the object and set each value equal to "Unknown"
//For example, if "person" is {name: "Dolph L.", age: 33} then the function would return {name: "Unknown", age: "Unknown"}
function describePerson(person) {
//code here
}
如果我的理解是正确的,它说我必须遍历对象并将它的属性重新分配给 "Unknown"。我一直在尝试做的是:
function describePerson(person) {
for (var prop in person) {
if (prop) {
return "Unknown";
}
}
}
我是 Javascript 的新手,在这里真的需要一些帮助。
谢谢
for (var prop in person) {
if (person.hasOwnProperty(prop)) {
person[prop] = "Unknown";
}
}
return person;
您不希望在循环中 return,您希望使用 =
运算符修改对象的每个 属性。
hasOwnProperty
背后的原因如下。
person
是一个对象。该对象从其 Prototype 继承属性。你不关心那些继承的属性,所以你调用 hasOwnProperty
which returns true
如果 属性 是你给它的。
对于我正在拍摄的 class,我需要将对象的属性重新分配给 "Unknown"。这是示例问题:
//In the function below, "person" will be passed in as an object that represents a person with properties such as name, age, gender, etc.
//Loop through all the properties of the object and set each value equal to "Unknown"
//For example, if "person" is {name: "Dolph L.", age: 33} then the function would return {name: "Unknown", age: "Unknown"}
function describePerson(person) {
//code here
}
如果我的理解是正确的,它说我必须遍历对象并将它的属性重新分配给 "Unknown"。我一直在尝试做的是:
function describePerson(person) {
for (var prop in person) {
if (prop) {
return "Unknown";
}
}
}
我是 Javascript 的新手,在这里真的需要一些帮助。
谢谢
for (var prop in person) {
if (person.hasOwnProperty(prop)) {
person[prop] = "Unknown";
}
}
return person;
您不希望在循环中 return,您希望使用 =
运算符修改对象的每个 属性。
hasOwnProperty
背后的原因如下。
person
是一个对象。该对象从其 Prototype 继承属性。你不关心那些继承的属性,所以你调用 hasOwnProperty
which returns true
如果 属性 是你给它的。