javascript - 如何使用 javascript 从 JSON 字符串获取特定值

标签 javascript html api loops for-loop

我正在使用 JavaScript 从 API 获取数据,我得到的结构如下所示:

[{
    "word":"gentleman",
    "score":42722,
    "tags":["syn","n"]
},
{
    "word":"serviceman",
    "score":38277,
    "tags":["syn","n"]
},
{
    "word":"human being",
    "score":34153,
    "tags":["syn","n"]
},
{
    "word":"valet",
    "score":31892,
    "tags":["syn","n"]
}
// etc...
]

我只想获取与键 word 关联的值这样输出将是:

绅士军人人类等等...

请帮助我循环这些数据,以便我只能得到所需的输出。

index.html:

<form id="initial-word-form">
    <input style="float: left;" type="text" name="test" id="synonyms" required>
</form>
<a href="#" id="related-word"></a>
<button id="myBtn" onclick="relatedWordClick()">Find Synonyms</button>
<p id="history"></p>

main.js:

function relatedWordClick (){
    event.preventDefault();
    const x = document.getElementById("synonyms").value;
    document.getElementById("history").innerHTML = x;
    fetch("https://api.datamuse.com/words?ml=" + x)
        .then((resp) => resp.json())
        .then (data =>
            {
                const obj = JSON.stringify(data);   
                document.getElementById("history").innerHTML = obj;
            })
        .catch(err => console.log(err));
    }

最佳答案

迭代每个数据对象并将其 word 属性映射到另一个 wordArr。

const wordArr = data.map(obj => obj.word)

wordArr 将如下所示:["gentleman", "human", "etc"]

关于javascript - 如何使用 javascript 从 JSON 字符串获取特定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52369804/

相关文章:

android:我如何从我的应用程序中打开另一个应用程序?

javascript - 游戏计数器不增加 - Javascript

javascript - 如果弹性滚动弹起时 DOM 发生更改,则滚动位置会跳跃

javascript - 何时使用 Uint8Array、Uint16Array、Uint32Array

javascript - 尝试将 .dae 文件转换为 .gltf 文件,以便我可以与 cesium 3d 模型一起使用

javascript - Meteor 聊天框 html 卡在字符串形式

reactjs - 如何摆脱这个 - 消息 : {'You are not subscribed to this API.' }. ?

javascript - Rails 3 和 plupload - 上传后如何进行重定向?

javascript - 表格外的表格 "jump"中的angularjs ng-repeat?

javascript - 谷歌分析 API Javascript : 403 Forbidden Error