JavaScript: получить копию объекта, где ключи стали значениями, а значения ключами
Объект JavaScript: упражнение 16 с решением
Напишите функцию JavaScript, чтобы получить копию объекта, ключи которого стали значениями, а значения - ключами.
Пример решения: -
HTML-код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JavaScript function to get a copy of the object where the keys have become the values and the values the keys.</title>
</head>
<body>
</body>
</html>
Код JavaScript:
function invert_key_value(obj) {
var result = {};
var keys = _keys(obj);
for (var i = 0, length = keys.length; i < length; i++) {
result[obj[keys[i]]] = keys[i];
}
return result;
}
function _keys(obj)
{
if (!isObject(obj)) return [];
if (Object.keys) return Object.keys(obj);
var keys = [];
for (var key in obj) if (_.has(obj, key)) keys.push(key);
return keys;
}
function isObject(obj)
{
var type = typeof obj;
return type ==='function' || type ==='object' && !!obj;
}
console.log(invert_key_value({red: "#FF0000", green: "#00FF00", white: "#FFFFFF"}));
Пример вывода:
{ "# FF0000": "красный", "# 00FF00": "зеленый", "# FFFFFF": "белый"}
Блок - схема:
Демонстрация в реальном времени:
См. Pen javascript-object-упражнение-16 от w3resource ( @ w3resource ) на CodePen .
Улучшите этот пример решения и опубликуйте свой код через Disqus
Предыдущая: напишите функцию JavaScript для преобразования объекта в список пар «[ключ, значение]».
Далее: Напишите функцию JavaScript, чтобы проверить, содержит ли объект данное свойство.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code