使用节点 js / javascript 获取嵌套值
getting nested value by using node js / javascript
let data =
[
{
"testingNewValue": {
"en-US": "hello"
}
},
{
"testingNewValue": {
"hi-IN": "hello "
}
},
{
"testingNewValue": {
"us": "dummy"
}
},
{
"testingNewValue": {
"xp-op-as": "value for testing"
},
"locationField": {
"en-US": {
"lat": 19.28563,
"lon": 72.8691
}
}
}
]
const value = Object.fromEntries(Object.entries(data).map(el=>(el[1]=Object.values(el[1])[0], el)))
console.log(value);
我试图通过使用 object.fromEntries n object.entries 从数据 json 中获取价值,但它并没有像我期望的那样工作,因为我期望的值为 [=13] =]
预期
{
{
testingNewValue:"hello"
},
{
testingNewValue:"hello"
},
{
testingNewValue:"dummy"
},
{
testingNewValue:"value for testing",
locationField:{
lat: 19.28563,
lon: 72.8691
}
}
}
但我得到“0”、“1”、“2”,正如您在代码片段中看到的那样,因为我想从数据中删除所有“en-US”、“hi-In”n
我怎样才能得到我的期望值
假设你实际上是在一个数组之后(因为你当前的预期结果不是一个有效的结构),你应该获取每个内部对象的整体,然后使用 [=11= 构建你的新对象] 在映射每个条目之后,而不是获取整个 data
数组的全部内容,这会导致索引出现在您当前的结果中。下面的代码假定您在每个内部对象中都有一个值,并且每个值都是一个对象:
const data = [ { "testingNewValue": { "en-US": "hello" } }, { "testingNewValue": { "hi-IN": "hello " } }, { "testingNewValue": { "us": "dummy" } }, { "testingNewValue": { "xp-op-as": "value for testing" }, "locationField": { "en-US": { "lat": 19.28563, "lon": 72.8691 } } } ];
const value = data.map(el=>
Object.fromEntries(Object.entries(el).map(([k, v]) => [k, Object.values(v)[0]]))
);
console.log(value);
let data =
[
{
"testingNewValue": {
"en-US": "hello"
}
},
{
"testingNewValue": {
"hi-IN": "hello "
}
},
{
"testingNewValue": {
"us": "dummy"
}
},
{
"testingNewValue": {
"xp-op-as": "value for testing"
},
"locationField": {
"en-US": {
"lat": 19.28563,
"lon": 72.8691
}
}
}
]
const value = Object.fromEntries(Object.entries(data).map(el=>(el[1]=Object.values(el[1])[0], el)))
console.log(value);
我试图通过使用 object.fromEntries n object.entries 从数据 json 中获取价值,但它并没有像我期望的那样工作,因为我期望的值为 [=13] =]
预期
{
{
testingNewValue:"hello"
},
{
testingNewValue:"hello"
},
{
testingNewValue:"dummy"
},
{
testingNewValue:"value for testing",
locationField:{
lat: 19.28563,
lon: 72.8691
}
}
}
但我得到“0”、“1”、“2”,正如您在代码片段中看到的那样,因为我想从数据中删除所有“en-US”、“hi-In”n
我怎样才能得到我的期望值
假设你实际上是在一个数组之后(因为你当前的预期结果不是一个有效的结构),你应该获取每个内部对象的整体,然后使用 [=11= 构建你的新对象] 在映射每个条目之后,而不是获取整个 data
数组的全部内容,这会导致索引出现在您当前的结果中。下面的代码假定您在每个内部对象中都有一个值,并且每个值都是一个对象:
const data = [ { "testingNewValue": { "en-US": "hello" } }, { "testingNewValue": { "hi-IN": "hello " } }, { "testingNewValue": { "us": "dummy" } }, { "testingNewValue": { "xp-op-as": "value for testing" }, "locationField": { "en-US": { "lat": 19.28563, "lon": 72.8691 } } } ];
const value = data.map(el=>
Object.fromEntries(Object.entries(el).map(([k, v]) => [k, Object.values(v)[0]]))
);
console.log(value);