Javascript 更改对象列表中的值
我有一个对象列表,我需要在列表中循环并将值从true更改为false。一个简单的for循环不应该起作用吗?我错过什么了吗Javascript 更改对象列表中的值,javascript,for-loop,Javascript,For Loop,我有一个对象列表,我需要在列表中循环并将值从true更改为false。一个简单的for循环不应该起作用吗?我错过什么了吗 var list = [ { color: 'blue', 'taste': 'sour', 'available': true }, { color: 'yellow', 'taste': 'bitter', 'available': false }, { color: 'red', 'taste': 'sweet', 'available': false },
var list = [
{ color: 'blue', 'taste': 'sour', 'available': true },
{ color: 'yellow', 'taste': 'bitter', 'available': false },
{ color: 'red', 'taste': 'sweet', 'available': false },
{ color: 'green', 'taste': 'umami', 'available': false }
]
for(var i = 0; i < list.length; i++){
if(list[i].available === true){
list[i].available === false;
}
}
var列表=[
{颜色:'blue','taste':'sour','available':true},
{颜色:'黄色','味道':'苦','可用':假},
{颜色:'red','taste':'sweet','available':false},
{颜色:'green','taste':'umami','available':false}
]
对于(变量i=0;i
当我返回列表时,虽然它给了我第一次捕获的列表。我使用的循环是错误的还是其他原因?var list=[
var list = [
{ color: 'blue', 'taste': 'sour', 'available': true },
{ color: 'yellow', 'taste': 'bitter', 'available': false },
{ color: 'red', 'taste': 'sweet', 'available': false },
{ color: 'green', 'taste': 'umami', 'available': false }
]
for(var i = 0; i < list.length; i++){
if(list[i].available === true){
// you were not modifying here, just comparing
list[i].available = false;
}
}
{颜色:'blue','taste':'sour','available':true},
{颜色:'黄色','味道':'苦','可用':假},
{颜色:'red','taste':'sweet','available':false},
{颜色:'green','taste':'umami','available':false}
]
对于(变量i=0;i
var列表=[
{颜色:'blue','taste':'sour','available':true},
{颜色:'黄色','味道':'苦','可用':假},
{颜色:'red','taste':'sweet','available':false},
{颜色:'green','taste':'umami','available':false}
]
对于(变量i=0;i
您正在使用list[i]进行比较。available===false
。您需要将false
分配到list[i]。available
。因此,请尝试此list[i]。available=false您正在使用list[i]进行比较。available==false
。您需要将false
分配到列表中[i] .available
。那么,试试这个list[i]。available=false
纯粹是一种风格,但是为什么在引用所有其他键时,颜色是一个不带引号的键呢?这样的不一致会隐藏错误…list[i]。available==false
正在执行比较。您需要执行赋值:list[i].available=false
哦,这只是一个输入错误。我只是想快速模拟数组中的一组对象。这纯粹是一种样式,但为什么在所有其他键都被引用时颜色是一个不带引号的键呢?这样的不一致会隐藏错误…list[I].available===false
正在执行比较。您需要执行赋值:list[i].available=false
哦,那只是一个输入错误。我只是想快速模拟数组中的一堆对象。这里主要是吹毛求疵,但没有必要与==true
进行比较。这就解决了这个问题,@Alex Marple我想这是你的问题,如果你的回答好,请标记接受的答案。这里没有必要对任何人说东北(rishab开发除外)由于用户犯了一个错误,这就是答案变得臃肿的原因。或者我猜前3票是rishabh dev?:-)啊,是的。我知道我遗漏了一些令人不安的简单内容。谢谢。修复。我会在10分钟内接受它。天哪,现在有人否决了你。哥们,这堆人到底怎么了?哈哈,谢谢你放弃了这个问题。这里大部分都是吹毛求疵,但是没有必要与==true
进行比较。这就解决了这个问题,@Alex Marple我想这是你的问题,如果你的回答好,请标记接受答案。这里没有必要对任何人进行比较(除了rishab dev)由于用户犯了一个错误,这就是答案变得臃肿的原因。或者我猜前3票是rishabh dev?:-)啊,是的。我知道我遗漏了一些令人不安的简单内容。谢谢。修复。我会在10分钟内接受它。天哪,现在有人否决了你。哥们,这堆人到底怎么了?哈哈,谢谢你放弃这一点。。