JavaScript 如何从给定的键值对创建对象

JavaScript 如何从给定的键值对创建对象

在本文中,我们将学习如何使用JavaScript从给定的键值对创建对象。键值对:唯一标识符(键)与其对应的值相关联;在编程中对于数据组织和检索非常重要。下面是一些常见的方法。

下面是一些实现上述目标的方法。

  • 使用数字键和值在JavaScript中
  • 使用Object.assign()
  • 使用for循环
  • 使用自定义函数
  • 使用Map对象

我们将通过示例来探索上述所有方法以及它们的基本实现。

方法1:使用数字键和值在JavaScript中

在这种方法中,我们初始化一个空对象,并使用数字键添加键值对,从而得到一个具有相应值的属性的对象。

示例1: 这是最简单和最基本的方法。在这种方法中,我们直接将键值对添加到之前创建的空对象中。

Javascript

let object = {};
let firstKey = 0;
let firstKeyValue = "GeeksforGeeks";
let secondKey = 1;
let secondKeyValue = "Hello JavaScript";
let thirdKey = 2;
let thirdKeyValue = "Hello React";
 
object[firstKey] = firstKeyValue;
object[secondKey] = secondKeyValue;
object[thirdKey] = thirdKeyValue;
console.log(object);
JavaScript

输出

{ '0': 'GeeksforGeeks', '1': 'Hello JavaScript', '2': 'Hello React' }

JavaScript

方法2:使用 Object.assign()

这种方法使用 Object.assign() 方法将具有数值键的键值对添加到一个空对象中,从而创建一个将属性分配给相应值的对象。

示例: 在这个示例中,我们将使用 Object.assign() 方法,该方法是 Object 超类的一部分。该方法将复制所有的值,并将这些值追加到对象中作为键值对。

Javascript

let object = {};
let firstKey = 0;
let firstKeyValue = "GeeksforGeeks";
let secondKey = 1;
let secondKeyValue = "Hello JavaScript";
let thirdKey = 2;
let thirdKeyValue = "Hello React";
 
Object.assign(object, { [firstKey]: firstKeyValue });
Object.assign(object, { [secondKey]: secondKeyValue });
Object.assign(object, { [thirdKey]: thirdKeyValue });
 
console.log(object);
JavaScript

输出

{ '0': 'GeeksforGeeks', '1': 'Hello JavaScript', '2': 'Hello React' }

JavaScript

方法3:使用for循环

在这种方法中,我们使用循环来迭代两个包含键和值的数组,根据数组中的值给对象赋值属性。

示例: 在这个示例中,我们假设我们的键和对应的值都存在于一个数组中。我们首先使用for循环遍历该数组,然后我们会将数组中的数据动态地追加到一个空对象中作为键值对。

Javascript

let object = {};
let keys = [0, 1, 2];
let values = ["GeeksforGeeks",
    "Hello JavaScript", "Hello React"];
for (let i = 0; i < keys.length; i++) {
    object[keys[i]] = values[i];
}
console.log(object);
JavaScript

输出:

{ "0": "GeeksforGeeks", "1": "Hello JavaScript", "2": "Hello React" }  
JavaScript

方法4:使用自定义函数

该方法涉及一个接受键数组和值数组作为参数的自定义函数。它遍历数组,使用相应的键和值向对象中添加属性。

示例: 该示例使用自定义函数从数组中创建一个具有数值键和相应字符串值的对象。

Javascript

function createObject(keys, values) {
    const object = {};
 
    for (let i = 0; i < keys.length; i++) {
        object[keys[i]] = values[i];
    }
 
    return object;
}
 
const keys = [0, 1, 2];
const values =
    ["GeeksforGeeks", "Hello JavaScript", "Hello React"];
 
const object = createObject(keys, values);
 
console.log(object);
JavaScript

输出

{ '0': 'GeeksforGeeks', '1': 'Hello JavaScript', '2': 'Hello React' }

JavaScript

方法5:使用Map对象

在这种方法中,我们使用Map对象和Object.fromEntries()方法从键和值的数组创建一个对象,将数字键有效地映射到相应的字符串值。

示例: 该示例使用Map对象和Object.fromEntries()方法,从数组中创建具有数字键和字符串值的对象。

Javascript

const keys = [0, 1, 2];
const values = ["GeeksforGeeks", "Hello JavaScript", "Hello React"];
 
const keyValuePairs = keys.map((key, index) => [key, values[index]]);
const object = Object.fromEntries(keyValuePairs);
 
console.log(object);
JavaScript

输出

{ '0': 'GeeksforGeeks', '1': 'Hello JavaScript', '2': 'Hello React' }
JavaScript

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册