[英]Javascript update Object attribute value
我正在尝试更新对象属性:
data : [
{"id":1,"rp":"2426","cr":"11-11"},
{"id":1,"rp":"1119","cr":"19-21"},
{"id":1,"rp":"3453","cr":"23-81"}
]
新对象将如下更新。
NewData: [
{"id":1,"rp":"2426","cr":"11/11"},
{"id":1,"rp":"1119","cr":"19/21"},
{"id":1,"rp":"3453","cr":"23/81"}
]
我希望更新所有值的对象cr属性,例如使用javascript.replace()方法,我会执行replace(“-”,“ /”)。
那只是Array#map
和String#replace
的简单用法:
ES2018
const data = [{"id":1,"rp":"2426","cr":"11-11"},{"id":1,"rp":"1119","cr":"19-21"},{"id":1,"rp":"3453","cr":"23-81"}] const r = data.map(({ cr, ...rest }) => ({ cr: cr.replace('-', '/'), ...rest })); console.log(r);
您可以迭代并映射数组。
var data = [{ id: 1, rp: "2426", cr: "11-11" }, { id: 1, rp: "1119", cr: "19-21" }, { id: 1, rp: "3453", cr: "23-81" }], newArray = data.map(o => Object.assign({}, o, { cr: o.cr.replace("-","/") })); console.log(newArray);
.as-console-wrapper { max-height: 100% !important; top: 0; }
您可以使用map
方法创建新数组并replace
以更新cr
属性。
var data = [{"id":1,"rp":"2426","cr":"11-11"},{"id":1,"rp":"1119","cr":"19-21"},{"id":1,"rp":"3453","cr":"23-81"}] var update = data.map(({cr, ...rest}) => ({...rest, cr: cr.replace("-","/")})) console.log(update)
尝试这个:
const data = [ {"id":1,"rp":"2426","cr":"11-11"}, {"id":1,"rp":"1119","cr":"19-21"}, {"id":1,"rp":"3453","cr":"23-81"} ]; const newData = data.map(item => ({...item, cr: item.cr.replace(/-/g, '/')})); console.log(newData);
如果您需要它在IE11中工作:
const data = [ {"id":1,"rp":"2426","cr":"11-11"}, {"id":1,"rp":"1119","cr":"19-21"}, {"id":1,"rp":"3453","cr":"23-81"} ]; const newData = data.map( function(item) { return { id: item.id, rp: item.rp, cr: item.cr.replace(/-/g, '/') } } ); console.log(newData);
你可以试试这个
let data = [ {"id":1,"rp":"2426","cr":"11-11"}, {"id":1,"rp":"1119","cr":"19-21"}, {"id":1,"rp":"3453","cr":"23-81"} ]; let newData = data.map(e=>{ e.cr = e.cr.replace(/-/, '/') return e }) console.log(newData)
只需在下面尝试
data.forEach(function(object){
object["cr"] = object["cr"].replace("-","/");
});
const data = [{"id":1,"rp":"2426","cr":"11-11"},{"id":1,"rp":"1119","cr":"19-21"},{"id":1,"rp":"3453","cr":"23-81"}] const r = JSON.parse(JSON.stringify(data).replace(/-/g,'/')) console.log(r);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.