Javascript 如何一次设置数组中给定属性的所有值
我有这个密码Javascript 如何一次设置数组中给定属性的所有值,javascript,arrays,Javascript,Arrays,我有这个密码 car = { "car_id": "325SDGSD-GSH4GRWW-DH534R", "Name": "suzuki", "desc": "compact machine to get your from point A to B", "engineSerial": "305-6467-3674&
car = {
"car_id": "325SDGSD-GSH4GRWW-DH534R",
"Name": "suzuki",
"desc": "compact machine to get your from point A to B",
"engineSerial": "305-6467-3674",
"Country": "Netherlands",
"Province": "George",
"City": "Charlie",
"branch_timings": {
"Monday": {
"doorsOpen": true,
"timings": [
{ "timeOpen": "00:01", "timeClose": "01:00" },
{ "timeOpen": "12:00", "timeClose": "00:00" }
]
},
"Tuesday": {
"doorsOpen": true,
"timings": [
{ "timeOpen": "00:01", "timeClose": "01:00" },
{ "timeOpen": "12:00", "timeClose": "00:00" }
]
},
"Wednesday": {
"doorsOpen": true,
"timings": [
{ "timeOpen": "00:01", "timeClose": "01:00" },
{ "timeOpen": "12:00", "timeClose": "00:00" }
]
},
"Thursday": {
"doorsOpen": true,
"timings": [
{ "timeOpen": "00:01", "timeClose": "01:00" },
{ "timeOpen": "12:00", "timeClose": "00:00" }
]
},
"Friday": {
"doorsOpen": true,
"timings": [
{ "timeOpen": "00:01", "timeClose": "01:00" },
{ "timeOpen": "12:00", "timeClose": "00:00" }
]
},
"Saturday": {
"doorsOpen": true,
"timings": [
{ "timeOpen": "00:01", "timeClose": "01:00" },
{ "timeOpen": "12:00", "timeClose": "00:00" }
]
},
"Sunday": {
"doorsOpen": true,
"timings": [
{ "timeOpen": "00:01", "timeClose": "01:00" },
{ "timeOpen": "12:00", "timeClose": "03:00" }
]
}
},
"status": true,
"specific_timings": true,
]
};
我想立刻把所有的时间从真变假
我尝试过的
我发现了一条类似的线
下面的代码片段是文章中的内容,它是有效的。。我试着用我自己的代码实现它,但它似乎不起作用,我将在下面用我自己的代码包含一个片段
array1=[{
名称:“用户”,
核对:正确
}, {
名称:“活动用户”,
勾选:假
}, {
名称:“完成”,
勾选:假
}]
console.log(array1.map)(函数(x){
x、 选中=正确;
返回x
}));代码>您的位置对象不是数组,这就是它不起作用的原因。
您希望映射locations对象的“branch_timings”属性,但它也不是数组类型。如果要使用map()函数,必须将此属性设置为数组。请尝试以下操作:
for (var key in locations.branch_timings) {
locations.branch_timings[key].timingsEnabled = false;
}
以下是实现这一目标的另一种方法:
Object.values(locations.branch_timings).forEach(day => day.timingsEnabled = false)
分支计时是一个对象,因此您可以迭代它的键(“星期一”
,“星期二”
,等等)。一种方法是使用Object.key()
获取这些键的数组:
let位置={
“位置标识”:“325SDGSD-GSH4GRWW-DH534R”,
“名称”:“地球”,
“地址”:“银河系,阿尔法象限,靠近火星”,
“电话”:“111-111-111”,
“AddressContinue”:空,
“Zip”:“73463”,
“地点”:“测试地点名称”,
“国家”:“荷兰”,
“省”:“乔治”,
“城市”:“查理”,
“纬度”:“22.22222”,
“经度”:“11.111111”,
“启用存储时间”:true,
“分支机构时间安排”:{
“星期一”:{
“timingsEnabled”:没错,
“时间安排”:[
{“timeOpen”:“00:01”,“timeClose”:“01:00”},
{“timeOpen”:“12:00”,“timeClose”:“00:00”}
]
},
“星期二”:{
“timingsEnabled”:没错,
“时间安排”:[
{“timeOpen”:“00:01”,“timeClose”:“01:00”},
{“timeOpen”:“12:00”,“timeClose”:“00:00”}
]
},
“星期三”:{
“timingsEnabled”:没错,
“时间安排”:[
{“timeOpen”:“00:01”,“timeClose”:“01:00”},
{“timeOpen”:“12:00”,“timeClose”:“00:00”}
]
},
“星期四”:{
“timingsEnabled”:没错,
“时间安排”:[
{“timeOpen”:“00:01”,“timeClose”:“01:00”},
{“timeOpen”:“12:00”,“timeClose”:“00:00”}
]
},
“星期五”:{
“timingsEnabled”:没错,
“时间安排”:[
{“timeOpen”:“00:01”,“timeClose”:“01:00”},
{“timeOpen”:“12:00”,“timeClose”:“00:00”}
]
},
“星期六”:{
“timingsEnabled”:没错,
“时间安排”:[
{“timeOpen”:“00:01”,“timeClose”:“01:00”},
{“timeOpen”:“12:00”,“timeClose”:“00:00”}
]
},
“星期日”:{
“timingsEnabled”:没错,
“时间安排”:[
{“timeOpen”:“00:01”,“timeClose”:“01:00”},
{“timeOpen”:“12:00”,“timeClose”:“03:00”}
]
}
},
“状态”:正确,
“特定时间”:正确,
“交付区域”:[
“地球象限a”,
“地球象限b”,
“地球象限c”,
“地球象限d”,
“地球象限e”
]
};
让branch_timings=位置。branch_timings;
for(对象的let键。键(分支_计时)){
分支定时[键]。定时启用=假;
}
控制台日志(位置)代码>@Baruch Mashasha已经用他的答案回答了。但这里有另一种方法:
Object.values(locations.branch_timings).forEach(o=>
o.timingsEnabled && (o.timingsEnabled=false));
在我的版本中,在设置属性之前,我会检查属性timingsEnabled
是否实际存在
位置={
“位置标识”:“325SDGSD-GSH4GRWW-DH534R”,
“名称”:“地球”,
“地址”:“银河系,阿尔法象限,靠近火星”,
“电话”:“111-111-111”,
“AddressContinue”:空,
“Zip”:“73463”,
“地点”:“测试地点名称”,
“国家”:“荷兰”,
“省”:“乔治”,
“城市”:“查理”,
“纬度”:“22.22222”,
“经度”:“11.111111”,
“启用存储时间”:true,
“分支机构时间安排”:{
“星期一”:{
“timingsEnabled”:没错,
“时间安排”:[
{“timeOpen”:“00:01”,“timeClose”:“01:00”},
{“timeOpen”:“12:00”,“timeClose”:“00:00”}
]
},
“星期二”:{
“timingsEnabled”:没错,
“时间安排”:[
{“timeOpen”:“00:01”,“timeClose”:“01:00”},
{“timeOpen”:“12:00”,“timeClose”:“00:00”}
]
},
“星期三”:{
“timingsEnabled”:没错,
“时间安排”:[
{“timeOpen”:“00:01”,“timeClose”:“01:00”},
{“timeOpen”:“12:00”,“timeClose”:“00:00”}
]
},
“星期四”:{
“timingsEnabled”:没错,
“时间安排”:[
{“timeOpen”:“00:01”,“timeClose”:“01:00”},
{“timeOpen”:“12:00”,“timeClose”:“00:00”}
]
},
“星期五”:{
“timingsEnabled”:没错,
“时间安排”:[
{“timeOpen”:“00:01”,“timeClose”:“01:00”},
{“timeOpen”:“12:00”,“timeClose”:“00:00”}
]
},
“星期六”:{
“timingsEnabled”:没错,
“时间安排”:[
{“timeOpen”:“00:01”,“timeClose”:“01:00”},
{“timeOpen”:“12:00”,“timeClose”:“00:00”}
]
},
“星期日”:{
“timingsEnabled”:没错,
“时间安排”:[
{“timeOpen”:“00:01”,“timeClose”:“01:00”},
{“timeOpen”:“12:00”,“时间”
//point to branch_timings
let b = locations.branch_timings;
Object.keys(b).forEach(key => !b[key].timingsEnabled || (b[key].timingsEnabled = false));