搜索
首页web前端js教程如何在 JavaScript 中存储 key => value 数组?

如何在 JavaScript 中存储 key => value 数组?

有时,我们需要使用 JavaScript 中的某些数据结构将键映射到特定值。例如,在 JavaScript 中将用户详细信息存储在键值对中非常有用。

我们可以使用不同的数据结构,例如JavaScript中的对象或映射,以键值格式存储数据。

使用对象在 JavaScript 中存储键 => 值

在 JavaScript 中,对象允许我们以键值格式存储数据。我们可以使用键和对象来从对象中获取数据。

语法

用户可以按照下面的语法使用JavaScript中的对象来存储键值对

let object = {};
object[key] = value;

在上面的语法中,我们创建了空对象。此外,我们将特定键的值存储在对象中

示例 1

在下面的示例中,我们创建了包含数字的keysArray。 valueArray 包含表示数字的不同字符串。

之后,我们使用for循环来遍历keysArray。我们从keysArray的第i个索引中获取键,并从valuesArray的第i个索引中获取值。对于每个键,我们将值存储在对象中。

最后,我们打印了对象的所有键和值。

<html>
<body>
   <h2 id="Using-the-i-objects-i-to-store-a-key-value-pairs-in-JavaScript">Using the <i> objects </i> to store a key => value pairs in JavaScript.</h2>
   <div id = "output"> </div>
   <script>
      var output = document.getElementById('output');
      let keysArray = [1, 2, 3, 4, 5, 6];
      let valuesArray = ["one", "two", "three", "four", "five", "six"];
      let object = {};
      for (let i = 0; i < keysArray.length; i++) {
         object[keysArray[i]] = valuesArray[i];
      }
      for (let key in object) {
         output.innerHTML += "Key - " + key + " , value - " + object[key] + "<br>";
      }
   </script>
</body>
</html> 

在 JavaScript 中使用映射存储 key => value

我们还可以使用映射以键值格式存储数据。 Map 类包含 set() 方法来设置数据,并以键和值作为参数。另外,map 类包含 get() 方法,该方法将键作为参数并返回映射的值。

语法

用户可以按照以下语法使用映射在 JavaScript 中存储键值对。

let mapData = new Map();
mapData.set(key, value) 

我们在上述语法中使用了 Map() 构造函数来创建一个新的地图对象。此外,我们还使用 set() 方法来设置键和值。

示例 2

在下面的示例中,mapKeys 数组包含数字字符串。我们迭代数组并将键值对设置为映射。在 for 循环中,我们使用 set() 方法来设置映射中的键值。此外,我们还传递了 mapKeys 数组中的键作为第一个参数,并将索引作为第二个参数。

<html>
<body>
   <h2 id="Using-the-i-mapData-i-to-store-a-Key-value-pairs-in-JavaScript">Using the <i> mapData </i> to store a Key => value pairs in JavaScript.</h2>
   <div id = "output"> </div>
   <script>
      var output = document.getElementById('output');
      let mapKeys = ["one", "two", "three", "four", "five", "six"];
      
      // Creating the new map
      let mapData = new Map();
      for (let i = 0; i < mapKeys.length; i++) {
         mapData.set(mapKeys[i], i)
      }
      for (let mapKey of mapData.keys()) {
         output.innerHTML += "mapKey - " + mapKey + " , value - " + mapData.get(mapKey) + "<br>";
      }
   </script>
</body>
</html>

在 JavaScript 中使用 array.reduce() 方法存储 key => value

array.reduce()方法通过减少数组将数组转换为单个元素。我们可以使用reduce()方法通过将数组数据以键值对格式存储在对象内部,将整个数组转换为单个对象。

语法

用户可以按照下面的语法使用 array.reduce() 方法将数组数据存储在对象中。

let object = arrayOfValues.reduce((obj, element, index) => {
   obj[index * 2] = element;
   return obj;
}, {}) 

我们在上面的语法中使用 {} (空对象)初始化了对象。我们将数组的每个元素存储在 obj 对象中,并从 array.reduce() 方法返回它。

示例 3

在下面的示例中,我们有一个 arrayOfValues 变量,其中包含字符串格式的不同编程语言。我们已经将数组转换为对象格式,对象格式以键值格式存储数组数据。

在 array.reduce() 方法中,obj 对象包含上次迭代更新的键值。在当前迭代中,我们使用索引 *2 作为键,使用数组元素作为对象元素的值。之后,我们返回 obj。

<html>
<body>
   <h2 id="Using-the-i-Array-reduce-method-i-to-store-a-key-value-pairs-in-JavaScript">Using the <i> Array.reduce() method </i> to store a key => value pairs in JavaScript.</h2>
   <div id = "output"> </div>
   <script>
      var output = document.getElementById('output');
      let arrayOfValues = ["TypeScript", "JavaScript", "ReactJS", "NextJS", "Python", "C"];
      let object = arrayOfValues.reduce((obj, element, index) => {
         
         // store element to object
         obj[index * 2] = element;
         
         // return updated object
         return obj;
      }, {})
      for (let objKey in object) {
         output.innerHTML += "Key - " + objKey + " , value - " + object[objKey] + "<br>";
      }
   </script>
</body>
</html>

我们在 JavaScript 中使用了 map、object 和 array.reduce() 方法以键值格式存储数据。地图是以键值格式存储数据的最佳方式。

以上是如何在 JavaScript 中存储 key => value 数组?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:tutorialspoint。如有侵权,请联系admin@php.cn删除
JavaScript数据类型:浏览器和nodejs之间是否有区别?JavaScript数据类型:浏览器和nodejs之间是否有区别?May 14, 2025 am 12:15 AM

JavaScript核心数据类型在浏览器和Node.js中一致,但处理方式和额外类型有所不同。1)全局对象在浏览器中为window,在Node.js中为global。2)Node.js独有Buffer对象,用于处理二进制数据。3)性能和时间处理在两者间也有差异,需根据环境调整代码。

JavaScript评论:使用//和 / * * / * / * /JavaScript评论:使用//和 / * * / * / * /May 13, 2025 pm 03:49 PM

JavaScriptusestwotypesofcomments:single-line(//)andmulti-line(//).1)Use//forquicknotesorsingle-lineexplanations.2)Use//forlongerexplanationsorcommentingoutblocksofcode.Commentsshouldexplainthe'why',notthe'what',andbeplacedabovetherelevantcodeforclari

Python vs. JavaScript:开发人员的比较分析Python vs. JavaScript:开发人员的比较分析May 09, 2025 am 12:22 AM

Python和JavaScript的主要区别在于类型系统和应用场景。1.Python使用动态类型,适合科学计算和数据分析。2.JavaScript采用弱类型,广泛用于前端和全栈开发。两者在异步编程和性能优化上各有优势,选择时应根据项目需求决定。

Python vs. JavaScript:选择合适的工具Python vs. JavaScript:选择合适的工具May 08, 2025 am 12:10 AM

选择Python还是JavaScript取决于项目类型:1)数据科学和自动化任务选择Python;2)前端和全栈开发选择JavaScript。Python因其在数据处理和自动化方面的强大库而备受青睐,而JavaScript则因其在网页交互和全栈开发中的优势而不可或缺。

Python和JavaScript:了解每个的优势Python和JavaScript:了解每个的优势May 06, 2025 am 12:15 AM

Python和JavaScript各有优势,选择取决于项目需求和个人偏好。1.Python易学,语法简洁,适用于数据科学和后端开发,但执行速度较慢。2.JavaScript在前端开发中无处不在,异步编程能力强,Node.js使其适用于全栈开发,但语法可能复杂且易出错。

JavaScript的核心:它是在C还是C上构建的?JavaScript的核心:它是在C还是C上构建的?May 05, 2025 am 12:07 AM

javascriptisnotbuiltoncorc; saninterpretedlanguagethatrunsonenginesoftenwritteninc.1)javascriptwasdesignedAsalightweight,解释edganguageforwebbrowsers.2)Enginesevolvedfromsimpleterterterpretpreterterterpretertestojitcompilerers,典型地提示。

JavaScript应用程序:从前端到后端JavaScript应用程序:从前端到后端May 04, 2025 am 12:12 AM

JavaScript可用于前端和后端开发。前端通过DOM操作增强用户体验,后端通过Node.js处理服务器任务。1.前端示例:改变网页文本内容。2.后端示例:创建Node.js服务器。

Python vs. JavaScript:您应该学到哪种语言?Python vs. JavaScript:您应该学到哪种语言?May 03, 2025 am 12:10 AM

选择Python还是JavaScript应基于职业发展、学习曲线和生态系统:1)职业发展:Python适合数据科学和后端开发,JavaScript适合前端和全栈开发。2)学习曲线:Python语法简洁,适合初学者;JavaScript语法灵活。3)生态系统:Python有丰富的科学计算库,JavaScript有强大的前端框架。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。