当我发现这个奇怪的速记时,我正在消磨时间阅读underscore.string函数:
function count (str, substr) {
var count = 0, index;
for (var i = 0; i < str.length;) {
index = str.indexOf(substr, i);
index >= 0 && count++; //what is this line doing?
i = i + (index >= 0 ? index : 0) + substr.length;
}
return count;
}
法律:在使用上面的函数之前要三思而后行,而不是考虑underscore.string
我把这条线单独放在这里,所以你不会浪费时间找到它:
index >= 0 && count++;
我从来没有见过类似的东西。我对在做什么一无所知。