jdo*_*dog 1 javascript associative-array
我的JS中有一个关联数组,我想提供我的Select.
这些是可用的标准时间,可以刷新我的可用时间(页面加载时);
var standardhours = {
"09" : '9AM',
"10" : '10AM',
"11" : '11AM',
"12" : 'Noon',
"13" : '1PM',
"14" : '2PM',
"15" : '3PM',
"16" : '4PM',
"17" : '5PM',
"18" : '6PM',
"19" : '7PM'
};
Run Code Online (Sandbox Code Playgroud)
这些是我想要为我的Select提供的可用时间.
var availablehours = {
"09" : '9AM',
"10" : '10AM',
"11" : '11AM',
"12" : 'Noon',
"13" : '1PM',
"14" : '2PM',
"15" : '3PM',
"16" : '4PM',
"17" : '5PM',
"18" : '6PM',
"19" : '7PM'
};
Run Code Online (Sandbox Code Playgroud)
这是我的动态变量,它根据数据库更改而变化.这些是已经有人花费的时间.
takenHours = {"09", "18"};
Run Code Online (Sandbox Code Playgroud)
我想从availablehours关联数组中删除takenHours.不确定如何.我的思维过程非常简单.
如果我理解正确,那么你应该能够availablehours通过delete运算符实现这种变异,如图所示:
var availablehours = {
"09": '9AM',
"10": '10AM',
"11": '11AM',
"12": 'Noon',
"13": '1PM',
"14": '2PM',
"15": '3PM',
"16": '4PM',
"17": '5PM',
"18": '6PM',
"19": '7PM'
};
console.log(availablehours);
var takenHours = ["09", "18"];
// Iterate through the hours to be removed
for (var takenHour of takenHours) {
// For each hour key, use the delete operator to remove
// the key/value pair from availablehours completlty
delete availablehours[takenHour]
}
// availablehours will no longer contain "09" or "18" key/value pairs
console.log(availablehours);Run Code Online (Sandbox Code Playgroud)