javascript属性动态更新
我正在学习javascript,并尝试了几个基本示例。我发现一些奇怪的行为,并认为这个论坛将帮助我更好地理解解决方案 我创建了一个对象,如下所示:javascript属性动态更新,javascript,Javascript,我正在学习javascript,并尝试了几个基本示例。我发现一些奇怪的行为,并认为这个论坛将帮助我更好地理解解决方案 我创建了一个对象,如下所示: var school={ name:"purnapramati", location:"girinagar", 'state-name':"karnataka", proximity:true } 现在,我动态添加一个属性,如下所示: school.country="india"; 当打印学校对象时,我看到更新的country属性
var school={
name:"purnapramati",
location:"girinagar",
'state-name':"karnataka",
proximity:true
}
现在,我动态添加一个属性,如下所示:
school.country="india";
当打印学校对象时,我看到更新的country属性,值为India
现在,我尝试将属性添加到邻近属性:
school.proximity.distance="less than 4kms";
这次,距离属性不会添加到“接近度”属性,也不会反映在学校对象中
为什么会有这种行为?请给我解释一下。我知道这是一个非常基本的问题,但我正在寻找一个令人信服的答案/理由。问题是,您的邻近属性不是对象,因此它不能具有属性。它是具有单个值的布尔值
我不确定真实的接近度代表什么,但你可以这样做:
var school={
name:"purnapramati",
location:"girinagar",
'state-name':"karnataka",
proximity: {
nearby: true
}
}
school.proximity = { distance: "less than 4kms" };
之后,您可以在尝试使用距离时为其提供其他属性
或者使用原始结构,您可以执行以下操作:
var school={
name:"purnapramati",
location:"girinagar",
'state-name':"karnataka",
proximity: {
nearby: true
}
}
school.proximity = { distance: "less than 4kms" };
但是,除非将其存储在另一个属性中,否则将丢失该真实值。问题在于,您的邻近属性不是对象,因此它不能具有属性。它是具有单个值的布尔值
我不确定真实的接近度代表什么,但你可以这样做:
var school={
name:"purnapramati",
location:"girinagar",
'state-name':"karnataka",
proximity: {
nearby: true
}
}
school.proximity = { distance: "less than 4kms" };
之后,您可以在尝试使用距离时为其提供其他属性
或者使用原始结构,您可以执行以下操作:
var school={
name:"purnapramati",
location:"girinagar",
'state-name':"karnataka",
proximity: {
nearby: true
}
}
school.proximity = { distance: "less than 4kms" };
但是,除非将其存储在另一个属性中,否则将丢失该真实值 school.approxity={距离:小于4km} 嗯。如果我想让它成为一个动态的对象呢?我能做吗?谢谢。现在我明白了。谢谢,好的。如果我想让它成为一个动态的对象呢?我能做吗?谢谢。现在我明白了。谢谢