【发布时间】:2018-08-07 18:50:36
【问题描述】:
我无法找到正确的方法来查找 for 循环中的项目是否在数组中。假设我有一个 for 循环,它正在迭代一些结果。如果它们在一个数组中:
ctids = [];
继续for 循环中的下一步,但如果没有,则将它们推送到数组并执行其他操作。正确的语法是什么?
for (var i=0;i<results.features.length;i++){
ACS_BG = results.features[i].attributes.BLKGRPCE;
ACS_ST = results.features[i].attributes.STATEFP;
ACS_CNTY = results.features[i].attributes.COUNTYFP;
ACS_TRCT = results.features[i].attributes.TRACTCE;
if ACS_TRCT exists in ctids { //This is where I am having trouble.
continue; //skip the rest of the if statement
} else {
ctids.push(ACS_TRCT);
// do something else;
};
};
【问题讨论】:
-
ctids不是一个数组,因为您将{}分配给它,所以.push将不起作用。你想达到什么目的?你能显示预期的输出吗? -
对不起;将其固定为数组。
-
请添加一些数据和想要的结果。
-
预期结果是,如果`ACS_TRCT`不在`ctids`数组中,则将该值推到那里。所以,
[123, 234, 345, 456]将是我想要的。这实际上只是如何查看 ACS_TRCT 的值是否已经在我所追求的数组中的语法。 -
循环中的其他常量呢?价值观不同吗?
标签: javascript arrays if-statement operators