我从json输入和模板构建HTML字符串。如何避免测试一个元素的存在以添加到Javascript中的大循环中的字符串?
JSON看起来就像这样:
...
"count": "5",
"items": {
"classes":[],
"href": ["index.html","search.html","brands.html","users.html","orders.html"],
...
}
这我在Javascript期待通过这样的:
for (i = 0; i < dyn.list.count; i += 1) {
elem = util.getTemplate('tmp_navbar_element', temps)
.replace('class_abc"','class_abc '+dyn.list.items.classes[i]+'"')
.replace("href='","href='"+dyn.list.items.href[i])
...
}
一切工作还好吧,但我不知道的最好的方法处理不在JSON配置中传递的元素。
例如,如果classes = []
,现在我将undefined添加到每个elem
因为用户没有指定一个类。
问题:
是避免通过检查if classes[i] !== undefined ...
还是有更简单的方法:“如果有一个只添加一个类”,“不确定”条目的唯一途径?
谢谢!
我想你可以用''tmp_gridcount'+(dyn.list.items.classes [i] ||'')+'“''作弊,它会输出空字符串而不是'undefined'。 – Matt 2013-02-17 14:25:28
ah ,是的,类似这样的,为什么会被认为是作弊? – frequent 2013-02-17 14:25:51
为什么你要循环访问'count'?只需迭代两个数组。 – Bergi 2013-02-17 14:26:09