根据名为“的”键的值分组,从对象数组中创建一个对象;PageName";在javascript中

根据名为“的”键的值分组,从对象数组中创建一个对象;PageName";在javascript中,javascript,arrays,object,ecmascript-6,nested-object,Javascript,Arrays,Object,Ecmascript 6,Nested Object,根据javascript中名为“PageName”的键的值分组,从对象数组中创建一个对象 输入: 需要输出:(按页面名称分组) 你可以在上面迭代。大概是这样的: 通用forEach()解决方案: const输入=[ {“pagename”:“主页”、“键”:“标题”、“值”:“登录”}, {“pagename”:“OTPpage”,“key”:“NAVIGATION_TITLE”,“value”:“OTP”}, {“pagename”:“Homepage”,“key”:“SUB_HEADER”

根据javascript中名为“PageName”的键的值分组,从对象数组中创建一个对象 输入:

需要输出:(按页面名称分组)


你可以在上面迭代。大概是这样的:

通用
forEach()
解决方案:
const输入=[
{“pagename”:“主页”、“键”:“标题”、“值”:“登录”},
{“pagename”:“OTPpage”,“key”:“NAVIGATION_TITLE”,“value”:“OTP”},
{“pagename”:“Homepage”,“key”:“SUB_HEADER”,“value”:“Mobile number”},
{“pagename”:“OTPpage”,“key”:“TITLE_HEADER”,“value”:“Login”},
{“pagename”:“RegisterPage”,“key”:“用户名\字段”,“值”:“用户名”},
{“pagename”:“Homepage”,“key”:“SUB_HEADER2”,“value”:“emailId”},
{“pagename”:“RegisterPage”,“key”:“PASSWORD\u FIELD”,“value”:“PASSWORD”}
]
const result={};
input.forEach(行=>{
结果[row.pagename]={…(结果[row.pagename]|{}),…{[row.key]:row.value}
})

控制台日志(结果)你可以在上面迭代。大概是这样的:

通用
forEach()
解决方案:
const输入=[
{“pagename”:“主页”、“键”:“标题”、“值”:“登录”},
{“pagename”:“OTPpage”,“key”:“NAVIGATION_TITLE”,“value”:“OTP”},
{“pagename”:“Homepage”,“key”:“SUB_HEADER”,“value”:“Mobile number”},
{“pagename”:“OTPpage”,“key”:“TITLE_HEADER”,“value”:“Login”},
{“pagename”:“RegisterPage”,“key”:“用户名\字段”,“值”:“用户名”},
{“pagename”:“Homepage”,“key”:“SUB_HEADER2”,“value”:“emailId”},
{“pagename”:“RegisterPage”,“key”:“PASSWORD\u FIELD”,“value”:“PASSWORD”}
]
const result={};
input.forEach(行=>{
结果[row.pagename]={…(结果[row.pagename]|{}),…{[row.key]:row.value}
})
控制台日志(结果)使用
reduce()

var列表=[
{“pagename”:“主页”、“键”:“标题”、“值”:“登录”},
{“pagename”:“OTPpage”,“key”:“NAVIGATION_TITLE”,“value”:“OTP”},
{“pagename”:“Homepage”,“key”:“SUB_HEADER”,“value”:“Mobile number”},
{“pagename”:“OTPPage”,“key”:“TITLE_HEADER”,“value”:“Login”},
{“pagename”:“RegisterPage”,“key”:“用户名\字段”,“值”:“用户名”},
{“pagename”:“Homepage”,“key”:“SUB_HEADER2”,“value”:“emailId”},
{“pagename”:“RegisterPage”,“key”:“PASSWORD\u FIELD”,“value”:“PASSWORD”}
]
var结果=列表。减少((a,v)=>{
a[v.pagename]=a[v.pagename]| |{}
[v.pagename][v.key]=v.value
归还
}, {})
console.log(结果)
使用
reduce()

var列表=[
{“pagename”:“主页”、“键”:“标题”、“值”:“登录”},
{“pagename”:“OTPpage”,“key”:“NAVIGATION_TITLE”,“value”:“OTP”},
{“pagename”:“Homepage”,“key”:“SUB_HEADER”,“value”:“Mobile number”},
{“pagename”:“OTPPage”,“key”:“TITLE_HEADER”,“value”:“Login”},
{“pagename”:“RegisterPage”,“key”:“用户名\字段”,“值”:“用户名”},
{“pagename”:“Homepage”,“key”:“SUB_HEADER2”,“value”:“emailId”},
{“pagename”:“RegisterPage”,“key”:“PASSWORD\u FIELD”,“value”:“PASSWORD”}
]
var结果=列表。减少((a,v)=>{
a[v.pagename]=a[v.pagename]| |{}
[v.pagename][v.key]=v.value
归还
}, {})

console.log(结果)
感谢您的解决方案工作完美感谢您的解决方案工作完美
[
  {"pagename": "Homepage", "key": "TITLE_HEADER", "value": "Login"},
  {"pagename": "OTPpage", "key": "NAVIGATION_TITLE", "value": "OTP"},
  {"pagename": "Homepage", "key": "SUB_HEADER", "value": "Mobile number"},
  {"pagename": "OTPPage", "key": "TITLE_HEADER", "value": "Login"},
  {"pagename": "RegisterPage", "key": "USERNAME_FIELD", "value": "User name"},
  {"pagename": "Homepage", "key": "SUB_HEADER2", "value": "emailId"},
  {"pagename": "RegisterPage", "key": "PASSWORD_FIELD", "value": "Password"}
]
{
    "Homepage":{
        "TITLE_HEADER":"Login",
        "SUB_HEADER":"Mobile number",
        "SUB_HEADER2":""emailId"
    },
    "OTPpage":{
        "NAVIGATION_TITLE":"OTP",
        "TITLE_HEADER":"Login"
    },
    "RegisterPage":{
        "USERNAME_FIELD":"User name",
        "PASSWORD_FIELD":"Password"
    }

}