JSON是一种轻量级的数据格式,它是JavaScript对象表示法的缩写。在使用JSON时,一般会将所有键值对都用双引号引起来(例如:"name":"Tom")。这是因为JSON规范要求所有的键名都必须使用双引号括起来。
但是,有些情况下可能需要将JSON中的键名去掉引号,例如在JavaScript代码中使用时。去掉JSON中的键名引号可以用以下代码:
var jsonStr = '{"name":"Tom","age":18}'; var jsonObj = JSON.parse(jsonStr,function(k,v){ if(typeof v === 'object'){ for(var key in v){ if(key && key.charat(0) !== '_'){ v[key] = v[key]; } } } return v; }); console.log(jsonObj);
代码中使用了JSON.parse函数的副作用: 传递一个函数作为参数,如果传递了该函数,则JSON.parse会在返回值之前调用该函数。该函数提供了键值对的方式,每个键值对的键名作为第一个参数(k),键值作为第二个参数(v)。在函数中,我们可以检查键名是否需要加引号,如果不需要则将键名重新赋值为原来的键名。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。