Краткость - это не то же самое, что читабельность или ремонтопригодность, а элегантность - в глазах сопровождающего. Код, который вы разместили, кажется мне излишне непрозрачным.
За последние пару десятилетий я разработал интенсивное отвращение к коду, которое не сразу очевидно, даже если очевидный метод требует немного больше кода. Неявный и магический код почти всегда менее удобен в обслуживании, если в миксе более одного человека.
Конкретный комментарий: я не понимаю, почему вы считаете свой код более лаконичным, элегантным или читабельным, чем:
var substrIdx = str.indexOf(substr);
if (substrIdx >= 0) {
doSomething(substrIdx);
}
Это также немного менее эффективно, потому что вы выполняете две операции и сравнение, а не просто сравнение. Кроме того, вы неправильно трактуете целое число как логическое значение, что почти всегда является плохой идеей с точки зрения обслуживания.
Наконец, как уже упоминалось ниже, вы мешаете минимизаторам Javascript, и с точки зрения краткости в конце, единственное, что беспокоит пользователя, - это скорость загрузки страницы ...