js 对象中的属性名是中文的时候怎么提取出来成为属性值,如图所示,将第一个图的数据格式,变成第二图中的
const arr = [{火车: 0}];
const newArr = arr.map(item => ({ name: Object.keys(item)[0], value: item[Object.keys(item)[0]] }));
console.log(newArr);
javascript 有两种数据类型
我可以通过以下步骤来实现该问题:
let target = {};
for(let prop in obj){
if(obj.hasOwnProperty(prop)){
if(/[\u4e00-\u9fa5]/.test(prop)){
target[prop] = obj[prop];
}
}
}
return target;
完整代码如下:
function extractChineseProperties(obj){
let target = {};
for(let prop in obj){
if(obj.hasOwnProperty(prop)){
if(/[\u4e00-\u9fa5]/.test(prop)){
target[prop] = obj[prop];
}
}
}
return target;
}
输入一个类似于第一张图片的对象,调用该函数后返回一个类似于第二张图片的目标对象。例如:
let obj = {
'名称': '小明',
'年龄': 20,
'性别': '男'
};
let extractedObj = extractChineseProperties(obj);
console.log(extractedObj);
// 输出:{ '名称': '小明', '性别': '男' }