Symbol.split
Базовая поддержка Широко доступно
Эта возможность хорошо себя зарекомендовала и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с сентября 2015 года.
Статическое свойство данных Symbol.split представляет общеизвестный символ Symbol.split. Метод String.prototype.split() ищет этот символ в своем первом аргументе для метода, который разбивает строку по индексам, соответствующим текущему объекту.
Для получения дополнительной информации см. RegExp.prototype[Symbol.split]() и String.prototype.split().
Попробовать
class Split1 {
constructor(value) {
this.value = value;
}
[Symbol.split](string) {
const index = string.indexOf(this.value);
return `${this.value}${string.substring(0, index)}/${string.substring(
index + this.value.length,
)}`;
}
}
console.log("foobar".split(new Split1("foo")));
// Expected output: "foo/bar"
Значение
Общеизвестный символ Symbol.split.
Атрибуты свойства Symbol.split
| |
|---|---|
| Записываемость | нет |
| Перечислимость | нет |
| Конфигурируемость | нет |
Примеры
Пользовательское обратное разбиение
class ReverseSplit {
[Symbol.split](string) {
const array = string.split(" ");
return array.reverse();
}
}
console.log("Another one bites the dust".split(new ReverseSplit()));
// [ "dust", "the", "bites", "one", "Another" ]
Спецификации
Совместимость с браузерами
| Десктопные | Мобильные | Серверные | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on iOS | Samsung Internet | WebView Android | WebView on iOS | Bun | Deno | Node.js | |
split |
50 |
79 |
49 |
37 |
10 |
50 |
49 |
37 |
10 |
5.0 |
50 |
10 |
1.0.0 |
1.0 |
6.0.0 |
См. также
- Полифилл
Symbol.splitвcore-js Symbol.matchSymbol.matchAllSymbol.replaceSymbol.searchString.prototype.split()RegExp.prototype[Symbol.split]()
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol/split