I have an array of objects with me: Array of objects
Now, I want to change the property name of an particular object(not the value). For ex:
My object has attribute PRODUCT NAME:'BAJAJ Brahmi Amla Hair Oil 300 ml'
in my data.
Required result:
PRODUCT_NAME:'BAJAJ Brahmi Amla Hair Oil 300 ml'
So, how can I replace the space in my property to an '_'.
Language used: React.js
I tried this function but it's not working for my desired result:
const productList = () => {
for (let i = 0; i < data.length; i++) {
let obj = data[i];
console.log(obj);
Object.keys(obj).forEach((key) => {
var replacedKey = key.trim().toUpperCase().replace(/\s\s+/g, "_");
if (key !== replacedKey) {
obj[replacedKey] = obj[key];
delete obj[key];
}
});
}
};
Can somebody explain why is this not working ?
can you please change replace(/\s\s+/g, "_")
to replace(" ", "_")
and then try, as you can see the below code
const productList = () => {
for (let i = 0; i < data.length; i++) {
let obj = data[i];
console.log(obj);
Object.keys(obj).forEach((key) => {
var replacedKey = key.trim().toUpperCase().replace(" ", "_");
if (key !== replacedKey) {
obj[replacedKey] = obj[key];
delete obj[key];
}
});
}
};
const string = "PRODUCT NAME"
console.log(string.trim().toUpperCase().replace(" ", "_"))