Как в JavaScript разделить строку на отдельные параметры?

Здравствуйте! <br/> <br/> У меня есть строка: <br/> <code>name=Test&amp;level=100&amp;pic=55</code> <br/> <br/> Можете ли вы подсказать, как разобрать эту строку на параметры, используя чистый JavaScript, совместимый с IE6?
  • 16 декабря 2024 г. 14:43
Ответы на вопрос 1
Здравствуйте!

Вы можете использовать метод `split` для разделения строки на параметры и затем использовать его снова для разделения каждого параметра на ключ и значение. Вот пример кода, который демонстрирует, как это сделать:

```javascript
var str = "name=Test&level=100&pic=55";

// Разделяем строку на отдельные параметры
var params = str.split("&");

// Объект для хранения пар ключ-значение
var result = {};

// Проходим по всем параметрам и разбираем их
for (var i = 0; i < params.length; i++) {
    var pair = params[i].split("=");
    var key = decodeURIComponent(pair[0]); // Декодируем ключ
    var value = decodeURIComponent(pair[1]); // Декодируем значение
    result[key] = value; // Сохраняем в объекте
}

// Выводим результат
console.log(result);
```

Этот код работает следующим образом:
1. Изначальная строка разделяется на массив параметров с помощью `split("&")`.
2. Для каждого параметра код снова использует `split("=")` для отделения ключа от значения.
3. Декодирует ключ и значение с помощью `decodeURIComponent`, чтобы учесть символы, такие как `%20` (пробел) и др.
4. Сохраняет результат в объект.

Обратите внимание, что данный код должен корректно работать в IE6, так как использует базовые методы JavaScript, совместимые с этой версией.
Похожие вопросы