Потому что это никогда не было частью стандартизированного языка.Его вообще не было в спецификациях ECMAScript 1 или 2, и он появляется только в ECMAScript 3 в разделе B.2 («Дополнительные свойства») (и последующих выпусках в похожих приложениях), в котором говорится:
Некоторые реализации ECMAScript включают дополнительные свойства для некоторых стандартных собственных объектов.В этом ненормативном приложении предлагается единообразная семантика для таких свойств без включения свойств или их семантики в этот стандарт.
Более того, substr
в значительной степени избыточен с substring
, но второй аргумент имеет другое значение, а также с slice
.
В прагматических терминах я был бы удивлен, если бы вы нашли основной движок JavaScript, который непредоставь это.