07.03.2020, 15:58
|
Кандидат Javascript-наук
|
|
Регистрация: 18.09.2014
Сообщений: 128
|
|
Почему в JavaScript не изменили простую и очевидную штуку?
indexOf - это де-факто firstIndexOf. Почему его не переименовали или по крайней мере не добавили метод firstIndexOf, чтобы не вводить в заблуждение новичков?
|
|
07.03.2020, 17:19
|
|
Тлен
|
|
Регистрация: 02.01.2010
Сообщений: 6,584
|
|
Потому что неочевиден только lastIndexOf. А просто indexOf очевиден в любой системе логики.
Если вы шизофреник, то это ваши проблемы.
__________________
29375, 35
|
|
07.03.2020, 18:15
|
Кандидат Javascript-наук
|
|
Регистрация: 18.09.2014
Сообщений: 128
|
|
Сообщение от Aetae
|
Потому что неочевиден только lastIndexOf. А просто indexOf очевиден в любой системе логики.
Если вы шизофреник, то это ваши проблемы.
|
Идиотское и немотивированное (зачем?) оскорбление проигнорирую, а по сути скажу то, что наличие метода firstIndexOf подсказывало бы новичкам, что существует и метод lastIndexOf, наличие которого зачастую является сюрпризом. Плюс наличие такой логики могло бы привести, к примеру, к появлению метода middleIndexOf.
|
|
08.03.2020, 05:06
|
|
Профессор
|
|
Регистрация: 19.01.2012
Сообщений: 505
|
|
Сообщение от jaroslav.tavgen
|
Почему его не переименовали
|
Для краткости. Javascript передаётся по сети в нескомпилированном виде, простым текстом. Много, очень много раз передаётся.
Сообщение от jaroslav.tavgen
|
не добавили метод firstIndexOf
|
То же самое. Плюс ненужное дублирование.
Сообщение от jaroslav.tavgen
|
подсказывало бы новичкам
|
Это задача туториалов и учебников.
Сообщение от jaroslav.tavgen
|
Плюс наличие такой логики могло бы привести, к примеру, к появлению метода middleIndexOf.
|
Если понадобится, то появится. Не вижу тут никаких препятствий.
|
|
22.03.2020, 14:03
|
Кандидат Javascript-наук
|
|
Регистрация: 18.09.2014
Сообщений: 128
|
|
Почему такую штуку не ввели?
Array.prototype.last = function(){
return this[this.length-1];
}
Или вообще отрицательные индексы как в Питоне. В splice они есть, а в обычной индексации массива - нет.
Последний раз редактировалось jaroslav.tavgen, 22.03.2020 в 15:10.
|
|
07.04.2020, 13:01
|
Кандидат Javascript-наук
|
|
Регистрация: 18.09.2014
Сообщений: 128
|
|
Ещё один фейспалм (на мой взгляд):
"aaab".match(/a{1,2}/g) // ["aa", "a"]
"aaab".match(/a{1, 2}/g) // null
|
|
07.04.2020, 13:17
|
|
Профессор
|
|
Регистрация: 08.11.2017
Сообщений: 642
|
|
я тоже думаю что javascript плохой, потому что он за меня не ходит на работу )
|
|
07.04.2020, 14:12
|
Кандидат Javascript-наук
|
|
Регистрация: 18.09.2014
Сообщений: 128
|
|
Сообщение от SuperZen
|
я тоже думаю что javascript плохой, потому что он за меня не ходит на работу )
|
Я не говорю, что он плохой (он замечательный!). Просто есть моменты, которые меня удивляют тем, что они не были исправлены ГОДАМИ, и переходили из версии в версию.
Зачем, например, нужен эффект, который я описал в предыдущем посте?
|
|
07.04.2020, 14:45
|
|
Профессор
|
|
Регистрация: 08.11.2017
Сообщений: 642
|
|
Понять и простить )
А так никто никому ничего не должен, не нравится - делаешь Pull Request )...
|
|
07.04.2020, 17:20
|
|
Профессор
|
|
Регистрация: 03.02.2020
Сообщений: 2,744
|
|
Сообщение от jaroslav.tavgen
|
Зачем, например, нужен эффект, который я описал в предыдущем посте?
|
Это не эффект, а реакция на синтаксическую ошибку в регулярном выражении
"aaab".match(/a{,2}/g)
"aaab".match(/a{*,;}/g)
Дадут тоже самое.
|
|
|
|