Javascript更新对象属性值
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("-","/")。
您可以迭代并映射数组。
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; }
这只是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);
您可以使用 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);
我正在尝试更新对象属性:
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("-","/")。
您可以迭代并映射数组。
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; }
这只是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);
您可以使用 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);