在 for 之后的 if 语句中使用对象项
Using object item in an if statement after for
我正在创建一个这样的对象:
markers[name] = {};
markers[name].id = id;
markers[name].lat = lati;
markers[name].lng = longi;
markers[name].state = state;
markers[name].position = posi;
markers[name].selected = false;
然后我有一个新函数,我想循环访问标记对象并更改标记图像 .selected已设置为 true。
这是我尝试过的:
function setMarkerImage() {
for (var key in markers) {
console.log("test 1: " + key + key.selected);
if (key.selected === true)
{
console.log("test 2");
var newImage = new google.maps.MarkerImage('img/presence/' + state + '_sel.png');
var marker = $("#dispatcher").gmap3({action: 'get', name:'marker', tag: key})
if (marker){
marker.setIcon(newImage);
}
}
}
}
问题是我得到了
test 1: Vinceundefined
在控制台中,我认为我无法使用密钥。像这样选择?
key
不是对象,所以它没有selected
键。 尝试改为使用
console.log("test 1: " + key + markers[key]["selected"]);
相关文章:
- 函数在return语句之前返回空对象
- 删除两个独立对象中的属性,而不使用多余的删除语句
- 函数中的If语句会创建其他对象
- Do let语句在全局对象上创建属性
- 如何在if语句中使用对象-Javascript
- 正在读取多个JSON对象's文本作为每个jQuery语句
- 在 for 之后的 if 语句中使用对象项
- JsRender:使用 if 语句将 JSON 对象中的值与外部变量进行比较
- 如何处理 JavaScript 条件语句中的可为空的对象
- 在Javascript中,有没有一种方法可以用一个语句创建一个索引对象数组
- jQuery - 基于作为函数参数传递的对象构建动态 if 语句
- 无法访问我在条件语句/循环不启动的循环中的数组或对象值
- 在 Jquery 中的 .map 对象上使用 If 语句
- 如何从 jQuery.ajax 成功语句推送父对象
- JavaScript 赋值属性语句以返回父对象
- 声明对象的两个语句之间的差异
- 如何基于 javascript 中的对象文字创建 if/elseif/else 语句
- JavaScript 对象方法返回语句
- 不明白为什么不应该在语句的开头使用对象文字
- 原型/对象语句和链遍历需要澄清