[英]Iterate over variables (JavaScript)
I have variables experience_company_1, experience_position_1,
experience_company_2, experience_position_2,....
我有变量
experience_company_1, experience_position_1,
experience_company_2, experience_position_2,....
How do I apply a for loop to these variables?如何对这些变量应用 for 循环? What I tried:
我尝试了什么:
for(let i = 1; i < 5; i++){
console.log(experience_company_ + i)
}
but not working.但不工作。
Note: These are the values of axios response.注意:这些是 axios 响应的值。
First of all, you should use an array
in cases like these.首先,在这种情况下,您应该使用
array
。 However, if you do want to go with your approach, you can use eval()
and Template Literals .但是,如果您确实想使用您的方法 go ,您可以使用
eval()
和Template Literals 。
for(let i = 1; i < 5; i++){
exp_var = eval(`experience_company_${i}`);
console.log(exp_var);
}
Caution: eval()
is evil and is not recommended.注意:
eval()
是邪恶的,不推荐使用。
Something like this:像这样的东西:
var experience_company_1 = 'Company 1', experience_position_1 = 'Position 1', experience_company_2 = 'Company 2', experience_position_2 = 'Position 2'; [ experience_company_1, experience_position_1, experience_company_2, experience_position_2 ].forEach(value => { console.log(value); });
use a jso structure:使用 jso 结构:
var experience = { company_1: 'c-1', position_1: 'p-1', company_2: 'c-2', position_2: 'p-2', company_3: 'c-3', position_3: 'p-3', company_4: 'c-4', position_4: 'p-4', company_5: 'c-5', position_5: 'p-5' } experience.position_2 = 'something else' for(let i=1;i<6;++i) { console.log(experience['company_'+i], experience['position_'+i] ) }
.as-console-wrapper { max-height: 100%;important: top; 0; }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.