我是编码的新手,这种情况对我来说是一个很大的问题。我正在使用reactjs并在一个函数中有这样的道具:
const{a,b,c,d,e,f,g,h} = props
因此,“ props”是一个对象,“ c”是一个数组,在“ c”内部是100个对象,范围从“ idx” 0到99,所有这些对象都具有相同的属性调用“ x”,“ x”值为布尔值“ true”或“ false”。我想知道遍历所有这100个对象的最佳方法,这样它将返回“ true”或“ false”
基本上,c是这样的:
let c = [{x:true},{x:true},{x:false}];
我只知道
console.log ('show value', props.c[idx])
显示此对象内的键和值,但不能通过props.c [idx] .x取得我想要的键。我认为我在某些地方错了。请帮助
奖金:我想知道这一点,所以对于每个'true',都会出现一个TRUE按钮,反之亦然,就像这样
{!x (<button> False </button>)}
答案 0 :(得分:1)
很难解释您的问题。但这不是您要寻找的(我使用3个元素组成的数组,但它应该对其中100个起作用):
let c = [{x:true},{x:true},{x:false}];
console.log(c.map(c=>c.x));
答案 1 :(得分:0)
让我们假设您的道具数据结构如下所示。
var props= {c : [{x:false},{x:true},{x:false},{x:true},{x:false},{x:true},{x:true}]}
然后,您的访问方法确实是正确的。下面的工作片段!
var props= {c : [{x:false},{x:true},{x:false},{x:true},{x:false},{x:true},{x:true}]}
console.log("props.c[idx] value is : ",props.c[0])
console.log("props.c[idx].x value is : ",props.c[0].x)
console.log("=================================================");
//loop through all
for(idx in props.c){
console.log("Loop ",idx," : ",props.c[idx].x);
}