String.split(separator, limit)
возвращает массив. В Javascript вы можете получить доступ к значениям массива по индексу, используя квадратные скобки. Массивы начинаются с нуля, 0
- первый элемент, 1
- второй и т. Д.
Эквивалент вашего кода будет:
var arr = document.cookie.split("=");
userName = arr[1];
Это отделяет document.cookie
знаком равенства (=
) и извлекает из него второй элемент (индекс 1). document.cookie
- это специальное свойство (тип данных: строка) объекта document
, которое содержит все файлы cookie веб-страницы, разделенные символом ;
. Например. если document.cookie содержит name=Adam
, массив arr
будет содержать значения name
и Adam
. Второй хранится в userName
.
Обратите внимание: если файл cookie содержит несколько значений или если значение содержит несколько знаков равенства, он не будет работать. Рассмотрим следующие случаи:
document.cookie
содержит name=Adam; home=Nowhere
. Используя приведенный выше код, получится, что userName
будет содержать Adam; home
, поскольку строка отделяется знаком равенства, а затем берется второе значение.
document.cookie
содержит home=Nowhere; name=Adam
. Это приведет к userName
, содержащему Nowhere; name
document.cookie
содержит name=Adam=cool
. В этом случае userName
будет Adam
, а не Adam=cool
.
Кроме того, w3schools не так надежен . Используйте более авторитетные источники, такие как Mozilla Developer Network: