用带引号的键映射Javascript对象的最佳方法是什么
我从API收到了这样的数据用带引号的键映射Javascript对象的最佳方法是什么,javascript,api,object,key-value,nest-nested-object,Javascript,Api,Object,Key Value,Nest Nested Object,我从API收到了这样的数据 var myObj = {'name':'ahmed','age':37,'tools':{'dev1':"macbook",'dev2':"iphone",'dev3':"tablet"},'gender':'male'}; 使其成为键值对的最佳方法是什么?注意存在嵌套对象 更新 谢谢你的回答 这是如果我不想展平我的物体 var myObj = {'name':'ahmed','age':37,'tools':{'dev1':"macbook",'dev2':"i
var myObj = {'name':'ahmed','age':37,'tools':{'dev1':"macbook",'dev2':"iphone",'dev3':"tablet"},'gender':'male'};
使其成为键值对的最佳方法是什么?注意存在嵌套对象
更新
谢谢你的回答
这是如果我不想展平我的物体
var myObj = {'name':'ahmed','age':37,'tools':{'dev1':"macbook",'dev2':"iphone",'dev3':"tablet"},'gender':'male'};
function unQuoteKeys(obj, newObj ={}){
Object.keys(obj).forEach(key => {
newObj[key] = obj[key]
});
return newObj
}
console.log(unQuoteKeys(myObj));
结果
{ name: 'ahmed',
age: 37,
tools: { dev1: 'macbook', dev2: 'iphone', dev3: 'tablet' },
gender: 'male' }
听起来像是要将整个对象展平为一组键值对。您可以使用一个简单的递归函数来实现这一点,该函数将键/值添加到返回对象(如果它们是简单值)中,或者在值是对象时递归:
var myObj={'name':'ahmed','age':37,'tools':{'dev1':'macbook','dev2':'iphone','dev3':“tablet”},'gender':'male'};
函数展平(obj,res={}){
Object.keys(obj.forEach)(key=>{
如果(对象的类型[键]='对象')展平(对象[键],分辨率)
else res[key]=obj[key]
})
返回res
}
log(展平(myObj))
听起来您想将整个对象展平为一组键值对。您可以使用一个简单的递归函数来实现这一点,该函数将键/值添加到返回对象(如果它们是简单值)中,或者在值是对象时递归:
var myObj={'name':'ahmed','age':37,'tools':{'dev1':'macbook','dev2':'iphone','dev3':“tablet”},'gender':'male'};
函数展平(obj,res={}){
Object.keys(obj.forEach)(key=>{
如果(对象的类型[键]='对象')展平(对象[键],分辨率)
else res[key]=obj[key]
})
返回res
}
log(展平(myObj))
如果要展平对象,也可以使用\u flatte()
方法。工作起来很有魅力。如果您想展平对象,也可以使用\u flatte()
方法。工作起来很有魅力。不清楚你的意思;那是一个物体。如果您要编写console.log(myObj.tools.dev1)
它将返回“macbook”…如果可能,请发布API发送的确切数据结构(作为JSON)。你发布的是一个JavaScript对象。你是在寻找JSON.parse(myObj)
,还是已经这么做了?这不是JSON,因为JSON需要双引号(“
),而不是单引号(”
)。重复(?)不清楚你的意思是什么;这是一个对象。如果你要编写console.log(myObj.tools.dev1)
它将返回“macbook”…如果可能的话,请发布API发送的确切数据结构(作为JSON)。您发布的是一个JavaScript对象。您正在寻找JSON.parse(myObj)
,还是您已经这样做了?这不是JSON,因为JSON需要双引号(“
),而不是单引号(”
)。重复(?)属于