Javascript 如何将JSON数组转换为JS?
从JSON中获取JS对象的最佳语法方式是什么? 我有一个描述表单字段的json文件,我想从中获取只包含name字段值的JS对象,该值等于null。像这样: JSON输入:Javascript 如何将JSON数组转换为JS?,javascript,arrays,json,Javascript,Arrays,Json,从JSON中获取JS对象的最佳语法方式是什么? 我有一个描述表单字段的json文件,我想从中获取只包含name字段值的JS对象,该值等于null。像这样: JSON输入: [ { "name": "firstname", "en": "First Name", "fr": "Prénom", "type": "text" }, { "name": "name", "en": "
[
{
"name": "firstname",
"en": "First Name",
"fr": "Prénom",
"type": "text"
},
{
"name": "name",
"en": "Last Name",
"fr": "Nom",
"type": "text"
},
{
"name": "email",
"en": "Email",
"fr": "Email",
"type": "text"
},
{
"name": "password",
"en": "Password",
"fr": "Mot de Passe",
"type": "password"
}
]
Js对象结果:
{
firstname: null,
name: null,
email: null,
password: null
}
有什么建议吗?使用reduce
var output = arr.reduce( ( a, c ) => ( a[c.name] = null, a ), {} );
演示
var arr=[{
姓名:名字,
恩:名字,
fr:Prénom,
类型:文本
},
{
姓名:姓名,,
恩:姓,
法兰西:诺姆,
类型:文本
},
{
姓名:email,
恩:电子邮件,
fr:电子邮件,
类型:文本
},
{
名称:密码,
密码,
fr:Mot de Passe,
类型:密码
}
]
var output=arr.reducea,c=>a[c.name]=null,a,{};
console.logoutput 使用reduce
var output = arr.reduce( ( a, c ) => ( a[c.name] = null, a ), {} );
演示
var arr=[{
姓名:名字,
恩:名字,
fr:Prénom,
类型:文本
},
{
姓名:姓名,,
恩:姓,
法兰西:诺姆,
类型:文本
},
{
姓名:email,
恩:电子邮件,
fr:电子邮件,
类型:文本
},
{
名称:密码,
密码,
fr:Mot de Passe,
类型:密码
}
]
var output=arr.reducea,c=>a[c.name]=null,a,{};
console.logoutput 使用arrayreduce
var data=[{name:firstname,en:First name,fr:Prénom,type:text},{name:name,en:Last name,fr:nom,type:text},{name:email,en:email,fr:email,type:text},{name:password,en:password,fr:Mot de Passe,type:password}],
result=data.reducer,{name}=>r[name]=null,r,{};
console.logresult 使用arrayreduce
var data=[{name:firstname,en:First name,fr:Prénom,type:text},{name:name,en:Last name,fr:nom,type:text},{name:email,en:email,fr:email,type:text},{name:password,en:password,fr:Mot de Passe,type:password}],
result=data.reducer,{name}=>r[name]=null,r,{};
console.logresult 您可以对属性使用
var数组=[{name:firstname,en:First name,fr:Prénom,type:text},{name:name,en:Last name,fr:nom,type:text},{name:email,en:email,fr:email,type:text},{name:password,en:password,fr:Mot de Passe,type:password}],
object=object.assign…array.map{name}=>{[name]:null};
console.logobject 您可以对属性使用
var数组=[{name:firstname,en:First name,fr:Prénom,type:text},{name:name,en:Last name,fr:nom,type:text},{name:email,en:email,fr:email,type:text},{name:password,en:password,fr:Mot de Passe,type:password}],
object=object.assign…array.map{name}=>{[name]:null};
console.logobject;定义语法最优的无语法代码?最具可读性?更容易理解和重用?更少的代码是的,我需要在一行中完成这项工作,因为我正在使用一些模块定义语法最优的-更少的代码?最具可读性?更容易理解和重用?代码更少是的,我需要在一行中完成此操作,因为我正在使用某些模块。我无法使其工作,获取错误:箭头函数不应返回赋值错误。。。我相信它来自于eslint是的,但由于eslint,在我的代码中实现它时遇到了一些问题。所以Nina Scholz解决方案更合适。我无法让它工作,得到错误:箭头函数不应该返回赋值错误。。。我相信它来自于eslint是的,但由于eslint,在我的代码中实现它时遇到了一些问题。因此,Nina Scholz解决方案更适合。