Что значит такая запись метода?

Из MDN:

str.substring(indexA[, indexB]);

Зачем в записи использованы квадратные скобки? Почему, например, не записали просто как str.substring(indexA, indexB). Может это значит, что второй символ не является обязательным?

Как это расшифровывается?


Ответы (1 шт):

Автор решения: HTO HOT

Такой синтаксис в коде выдаст ошибку. Так пишут только в различных документациях или же IDE. str.substring(indexA[, indexB]); Эта строка говорит о том, что метод substring имеет два параметра на вход и один из них необязательный.

Если бы мы могли переписать это в "рабочий код" это выглядело бы так.

String.prototype.substring = function(start,end = this.length){
    ///код
}
→ Ссылка