Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.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 如何使用lodash更新列表中的一个键值_Javascript_Lodash - Fatal编程技术网

Javascript 如何使用lodash更新列表中的一个键值

Javascript 如何使用lodash更新列表中的一个键值,javascript,lodash,Javascript,Lodash,我想更新列表中唯一的一个键值。这是我的数组列表, 我只需要更新open:false的日期:“星期一” 我的输出应该是 var bArray =[ {closingTime: "22:30", openingTime: "06:30", day: "SUNDAY", open: true}, {closingTime: "22:30", openingTime: "06:30", day: "MONDAY", open: false}, {closingTime

我想更新列表中唯一的一个键值。这是我的数组列表, 我只需要更新
open:false
日期:“星期一”

我的输出应该是

var bArray =[
      {closingTime: "22:30", openingTime: "06:30", day: "SUNDAY", open: true},
      {closingTime: "22:30", openingTime: "06:30", day: "MONDAY", open: false},
      {closingTime: "22:30", openingTime: "06:30", day: "TUESDAY", open: true}
    ]

我想用lodash来解决这个问题,你可以用下面的方法不用lodash来解决

var-bArray=[
{结束时间:“22:30”,开放时间:“06:30”,日期:“周日”,开放时间:真的},
{结束时间:“22:30”,开放时间:“06:30”,日期:“星期一”,开放时间:真},
{结束时间:“22:30”,开放时间:“06:30”,日期:“星期二”,开放时间:真的}
]
让result=bArray.map(e=>e.day==“星期一”?(e.open=false,e):e);

控制台日志(结果)您可以通过以下方式在不使用lodash的情况下完成

var-bArray=[
{结束时间:“22:30”,开放时间:“06:30”,日期:“周日”,开放时间:真的},
{结束时间:“22:30”,开放时间:“06:30”,日期:“星期一”,开放时间:真},
{结束时间:“22:30”,开放时间:“06:30”,日期:“星期二”,开放时间:真的}
]
让result=bArray.map(e=>e.day==“星期一”?(e.open=false,e):e);

控制台日志(结果)您也可以使用常规JavaScript执行此操作-

var-bArray=[
{结束时间:“22:30”,开放时间:“06:30”,日期:“周日”,开放时间:真的},
{结束时间:“22:30”,开放时间:“06:30”,日期:“星期一”,开放时间:真},
{结束时间:“22:30”,开放时间:“06:30”,日期:“星期二”,开放时间:真的}
]
var result=bArray.map(obj=>obj.day==“星期一”?({…obj,open:false}):obj);

控制台日志(结果)您也可以使用常规JavaScript执行此操作-

var-bArray=[
{结束时间:“22:30”,开放时间:“06:30”,日期:“周日”,开放时间:真的},
{结束时间:“22:30”,开放时间:“06:30”,日期:“星期一”,开放时间:真},
{结束时间:“22:30”,开放时间:“06:30”,日期:“星期二”,开放时间:真的}
]
var result=bArray.map(obj=>obj.day==“星期一”?({…obj,open:false}):obj);

控制台日志(结果)
还有一件事我想检查open在这种情况下是
true
还是
false
,我该怎么做?您能准确地指定条件吗?是否要添加and条件?是的,
如果(e.open==true)
表示我要更改为
false
e=>e.day==“周一”和&e.open类似这样的'e.day=='MONDAY'&&e.open==true?(e.open=false,e):e)“?还有一件事我想检查open是否为
true
false
在这种情况下我该怎么做?您能准确地指定条件吗?是否要添加and条件?是的,
如果(e.open==true)
表示我要更改为
false
e=>e.day==“周一”和&e.open类似这样的'e.day=='MONDAY'&&e.open==true?(e.open=false,e):e)“?
var bArray =[
      {closingTime: "22:30", openingTime: "06:30", day: "SUNDAY", open: true},
      {closingTime: "22:30", openingTime: "06:30", day: "MONDAY", open: false},
      {closingTime: "22:30", openingTime: "06:30", day: "TUESDAY", open: true}
    ]