首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JS:抓不到json键

问JS:抓不到json键
EN

Stack Overflow用户
提问于 2022-05-25 10:43:58
回答 1查看 36关注 0票数 0

我正在提交一个JSON,并试图访问各个密钥。

在此期间,我尝试了不同的方法。

代码语言:javascript
复制
    const jsonData = target.getAttribute('datas');
    console.log(jsonData.id); // returns undefined

    const jsonData = target.getAttribute('datas');
    console.log(jsonData[0].id); // returns undefined

    for(let key of Object.keys(jsonData)) {
        console.log(key);
    } // returns every single letter

    for (const [key, value] of Object.entries(jsonData)) {
        console.log(`${key}: ${value}`);
    } // returns every single letter

闲逛,为什么。我不需要解析json。每个代码解释都像我的一个变体一样。

//编辑

JSON:

代码语言:javascript
复制
{"id":"adf6cfce022e4798b11f3ae6bcd8dc0f","manufacturer":"..ö..","productName":"Blue Boat XL","productNumber":"A80801902","worth":[{"currencyId":"b7d2554b0ce847cd82f3ac9bd1c0dfca","net":11.05,"gross":11.9,"linked":false,"listPrice":null,"percentage":null,"regulationPrice":null,"extensions":[]}]}

仍未进入

代码语言:javascript
复制
const jsonData = JSON.parse(target.getAttribute('datas'));
    console.log(jsonData.id);

//解决方案//双解析LMAO

EN

回答 1

Stack Overflow用户

发布于 2022-05-25 10:46:30

听起来你还没有分析过数据--我猜jsonData实际上是一个字符串。您需要使用JSON.parse将字符串转换为对象。

尝试:

代码语言:javascript
复制
const jsonData = JSON.parse(target.getAttribute('datas'));
console.log(jsonData);

。。看看你能得到什么。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72376157

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档