Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将对象数组中的值从字符串数组更改为字符串数组_Javascript_Arrays_Ecmascript 6 - Fatal编程技术网

Javascript 如何将对象数组中的值从字符串数组更改为字符串数组

Javascript 如何将对象数组中的值从字符串数组更改为字符串数组,javascript,arrays,ecmascript-6,Javascript,Arrays,Ecmascript 6,我有两个数组,基于daysacative值中的数组,我想用值键值解析第二个对象数组,并将选中的键值更改为真 var daysActive = ['monday', 'tuesday', 'wednesday']; var weekDays = [{ "name": "Sunday", "value": "sunday", "id": "SUN","checked":false,disabled:true }, { "name": "Monday", "value": "

我有两个数组,基于
daysacative
值中的数组,我想用
键值解析第二个对象数组,并将
选中的
键值更改为

var daysActive = ['monday', 'tuesday', 'wednesday'];

var weekDays = [{ "name": "Sunday", "value": "sunday", "id": "SUN","checked":false,disabled:true },
            { "name": "Monday", "value": "monday", "id": "MON" ,"checked":false,disabled:true},
            { "name": "Tuesday", "value": "tuesday", "id": "TUE","checked":false,disabled:true },
            { "name": "Wednesday", "value": "wednesday", "id": "WED","checked":false,disabled:true },
            { "name": "Thursday", "value": "thursday", "id": "THU","checked":false,disabled:true },
            { "name": "Friday", "value": "friday", "id": "FRI","checked":false,disabled:true },
            { "name": "Saturday", "value": "saturday", "id": "SAT","checked":false,disabled:true}
            ];
合成数组

var resultantDays = [{ "name": "Sunday", "value": "sunday", "id": "SUN","checked":false, disabled:true },
                { "name": "Monday", "value": "monday", "id": "MON" ,"checked":true, disabled:true},
                { "name": "Tuesday", "value": "tuesday", "id": "TUE","checked":true, disabled:true },
                { "name": "Wednesday", "value": "wednesday", "id": "WED","checked":true, disabled:true },
                { "name": "Thursday", "value": "thursday", "id": "THU","checked":false, disabled:true },
                { "name": "Friday", "value": "friday", "id": "FRI","checked":false, disabled:true },
                { "name": "Saturday", "value": "saturday", "id": "SAT","checked":false, disabled:true}
                ];
我已经试过了,但它的方法是不正确的

var modifiedWeekdays = days.map(value => {
  weekdays.forEach(function(val, key) {
    Object.entries(val).forEach(([keyObj, valObj]) => {
       if (keyObj === 'value' && valObj === value) {

       }
    });
  });
});

您可以在
weekDays
数组中使用
map
函数查看
daysacactive
数组中是否存在该值

var daysacctive=[“星期一”、“星期二”、“星期三”];
var weekDays=[{“name”:“Sunday”,“value”:“Sunday”,“id”:“SUN”,“checked”:false,disabled:true},
{“name”:“Monday”,“value”:“Monday”,“id”:“MON”,“checked”:false,disabled:true},
{“名称”:“星期二”,“值”:“星期二”,“id”:“星期二”,“选中”:false,禁用:true},
{“名称”:“星期三”,“值”:“星期三”,“id”:“WED”,“checked”:false,disabled:true},
{“名称”:“星期四”,“值”:“星期四”,“id”:“THU”,“选中”:false,禁用:true},
{“名称”:“星期五”,“值”:“星期五”,“id”:“星期五”,“选中”:false,禁用:true},
{“name”:“Saturday”,“value”:“Saturday”,“id”:“SAT”,“checked”:false,disabled:true}
];
工作日。地图(日=>{
day.checked=daysActive.indexOf(day.value)!=-1;
});

控制台日志(工作日)
您可以在
工作日
数组中使用
映射
函数,查看该值是否存在于
日活动
数组中

var daysacctive=[“星期一”、“星期二”、“星期三”];
var weekDays=[{“name”:“Sunday”,“value”:“Sunday”,“id”:“SUN”,“checked”:false,disabled:true},
{“name”:“Monday”,“value”:“Monday”,“id”:“MON”,“checked”:false,disabled:true},
{“名称”:“星期二”,“值”:“星期二”,“id”:“星期二”,“选中”:false,禁用:true},
{“名称”:“星期三”,“值”:“星期三”,“id”:“WED”,“checked”:false,disabled:true},
{“名称”:“星期四”,“值”:“星期四”,“id”:“THU”,“选中”:false,禁用:true},
{“名称”:“星期五”,“值”:“星期五”,“id”:“星期五”,“选中”:false,禁用:true},
{“name”:“Saturday”,“value”:“Saturday”,“id”:“SAT”,“checked”:false,disabled:true}
];
工作日。地图(日=>{
day.checked=daysActive.indexOf(day.value)!=-1;
});

控制台日志(工作日)与@Vinesh解决方案相同:)

var daysActive=[“星期一”、“星期二”、“星期三”];
var工作日=[
{
姓名:“星期日”,
值:“星期日”,
id:“太阳”,
勾选:假,
残疾人士:对
},
{
姓名:“星期一”,
值:“星期一”,
id:“周一”,
勾选:假,
残疾人士:对
},
{
姓名:“星期二”,
值:“星期二”,
id:“星期二”,
勾选:假,
残疾人士:对
},
{
姓名:“星期三”,
值:“星期三”,
id:“WED”,
勾选:假,
残疾人士:对
},
{
姓名:“星期四”,
值:“星期四”,
id:“THU”,
勾选:假,
残疾人士:对
},
{
姓名:“星期五”,
值:“星期五”,
id:“星期五”,
勾选:假,
残疾人士:对
},
{
姓名:“星期六”,
值:“星期六”,
id:“SAT”,
勾选:假,
残疾人士:对
}
];
daysActive.forEach(dayActive=>{
const activeDay=weekDays.find(day=>day.value==dayActive);
activeDay.checked=!activeDay.checked;
});

控制台日志(工作日)与@Vinesh解决方案相同:)

var daysActive=[“星期一”、“星期二”、“星期三”];
var工作日=[
{
姓名:“星期日”,
值:“星期日”,
id:“太阳”,
勾选:假,
残疾人士:对
},
{
姓名:“星期一”,
值:“星期一”,
id:“周一”,
勾选:假,
残疾人士:对
},
{
姓名:“星期二”,
值:“星期二”,
id:“星期二”,
勾选:假,
残疾人士:对
},
{
姓名:“星期三”,
值:“星期三”,
id:“WED”,
勾选:假,
残疾人士:对
},
{
姓名:“星期四”,
值:“星期四”,
id:“THU”,
勾选:假,
残疾人士:对
},
{
姓名:“星期五”,
值:“星期五”,
id:“星期五”,
勾选:假,
残疾人士:对
},
{
姓名:“星期六”,
值:“星期六”,
id:“SAT”,
勾选:假,
残疾人士:对
}
];
daysActive.forEach(dayActive=>{
const activeDay=weekDays.find(day=>day.value==dayActive);
activeDay.checked=!activeDay.checked;
});
控制台日志(工作日)您可以结合使用

代码:

const daysActive=[“星期一”、“星期二”、“星期三”];
const weekDays=[{“name”:“Sunday”,“value”:“Sunday”,“id”:“SUN”,“checked”:false,disabled:true},
{“name”:“Monday”,“value”:“Monday”,“id”:“MON”,“checked”:false,disabled:true},
{“名称”:“星期二”,“值”:“星期二”,“id”:“星期二”,“选中”:false,禁用:true},
{“名称”:“星期三”,“值”:“星期三”,“id”:“WED”,“checked”:false,disabled:true},
{“名称”:“星期四”,“值”:“星期四”,“id”:“THU”,“选中”:false,禁用:true},
{“名称”:“星期五”,“值”:“星期五”,“id”:“星期五”,“选中”:false,禁用:true},
{“name”:“Saturday”,“value”:“Saturday”,“id”:“SAT”,“checked”:false,disabled:true}
];
const resultantDays=工作日.reduce((a,c)=>[…a,c.checked=daysActive.includes(c.value),c],);
console.log(resultdays)
.as控制台包装{max height:100%!important;top:0;}
您可以与

代码:

const daysActive=[“星期一”、“星期二”、“星期三”];
const weekDays=[{“name”:“Sunday”,“value”:“Sunday”,“id”:“SUN”,“checked”:false,disabled:true},
{“name”:“Monday”,“value”:“Monday”,“id”:“MON”,“checked”:false,disabled:true},
{“名称”:“星期二”,“值”:“星期二”,“id”:“星期二”,“选中”:false,禁用:true},
{“名称”:“星期三”,“值”:“星期三”,“id”:“WED”,“checked”:false,disabled:true},
{“名称”:“星期四”,“值”:“星期四”,