在JavaScript中,可以进行内联函数返回,例如:
$.each([1,2,3], function(index, variation) {
html_bar += '<li class="foo '+ (return (index === 1) ? 'active': '' ;)+'">bar</li>';
});
以上当然不起作用,只是想知道是否存在以下任何速记函数:
$.each([1,2,3], function(index, variation) {
var active = (index === 1) ? 'active': '' ;
html_bar += '<li class="foo '+ active +'">bar</li>';
});
答案 0 :(得分:2)
我不知道,如果我的问题是正确的,那么
$.each([1,2,3], function(index, variation) {
html_bar += '<li class="foo '+ (index === 1? 'active' : '')+'">bar</li>';
});
答案 1 :(得分:2)
为什么要从.each回调中返回一些内容?谁应该收到返回值?
使用这种结构的全部意义在于产生所谓的副作用,而无需通过显式迭代逐个命令这些操作。
在您的情况下,副作用是将字符添加到字符串html_bar,最终可以在页面中成为某些标记。只需从第一个示例中删除“return”语句即可。
答案 2 :(得分:1)
只需删除return
html_bar += '<li class="foo '+ (index === 1 ? 'active': '') +'">bar</li>';