javascript - 如何使用 JavaScript 数组通过 for 循环一次性检索 JSON 对象的值
问题描述
在 JavaScript 中,有没有一种方法可以一次性使用数组循环并在 for 循环中检索 JSON 对象的值?
我有一个数组专门用于我的 JSON 对象中的键:
var PersonArrayKeys = ["LastName", "FirstName", "MiddleName"];
还有我的 JSON 对象:。
var javaObj = '{ "LastName": "LN", "FirstName": "FN", "MiddleName": "MN"}'
var obj = JSON.parse(javaObj);
如果我像这样引用对象的键,我可以获得值,
console.log(obj.LastName);
但如果可能的话,我想一口气把所有这些都搞定。这是我唯一能想到的,但它给出了一个“意外的令牌:在 JSON 中”。
var objText;
for (j = 0; j < PersonArrayKeys.length; j++) {
console.log(PersonArrayKeys[j] + " key");
objText += obj.PersonArrayKeys[j];
}
console.log(objText);
解决方案
您也可以使用这个 oneliner 而不是循环 - 它枚举所有值并将它们合并到一个字符串中。
var objText = Object.values(obj).join(' ')
console.log(objText)
推荐阅读
- c++ - 为什么 std::normal_distribution 中有未初始化的值
- php - PHP Composer [Composer\Downloader\TransportException] curl 错误 61
- r - 使用 R 重塑数据时未定义的列问题
- bootstrap-4 - 无法在 react-bootstrap v1.5.1 中使用 bsClass、getClassSet 和 splitBsProps 函数
- c++ - 使用 gcc@9 代替 gcc 10
- mysql - 来自两个多对多表的MYSQL搜索查询优化
- spring-boot - JBOSS -CASSANDRA:com.datastax.oss.driver.api.core.servererrors.InvalidQueryException:列fruit的无效未设置值
- node.js - 错误:getaddrinfo EAI_AGAIN api.stripe.com:443
- reactjs - 赛普拉斯如何单击表格第一行最后一列中的锚标记
- node.js - Express API 在 AWS LightSail 上部署时没有响应