結果回傳 {firstname: 'Mike,Henry,Pete', lastname: 'Port,Split,Micky'} 我希望結果回傳 { firstName: Mike, lastName: Port }, { firstName: Henry, lastName: Split }, {名:皮特,姓:米奇}
var data = "Mike Port, Henry Split, Pete Micky";
var firstName = [];
var lastName = [];
var result = [];
var newNames = data.replaceAll(", ", ",");
var fullName = newNames.split(',');
fullName.forEach(name => {
let splitted = name.split(" ");
firstName.push(splitted[0]);
lastName.push(splitted[1]);
});
f_name_list = firstName.toString().split(", ");
l_name_list = lastName.toString().split(", ");
for (let i = 0; i < f_name_list.length; i ) {
result.push({
firstname: f_name_list[i],
lastname: l_name_list[i]
});
}
console.log(result);
uj5u.com熱心網友回復:
拆分資料,", "然后拆分" "
var data = "Mike Port, Henry Split, Pete Micky";
var result = [];
var newNames = data.split(", ");
newNames.forEach(name => {
let splitted = name.split(" ");
result.push({
firstname:splitted[0],
lastname: splitted[1]
});
});
console.log(result);
uj5u.com熱心網友回復:
您可以在一行中將String#split()與Array#map()和解構賦值相結合
代碼:
const data = 'Mike Port, Henry Split, Pete Micky'
const result = data
.split(', ')
.map(s => s.split(' '))
.map(([firstname, lastname]) => ({ firstname, lastname }))
console.log(result)
uj5u.com熱心網友回復:
從長遠來看,最好不要在代碼中指定鍵。如果您要添加一個新的屬性呼叫age資料怎么辦?這意味著必須進入代碼并更新它以適應很麻煩的變化。
此示例通過跟蹤鍵并回圈遍歷它們和值來創建新資料集,從而消除了這種復雜性。任何地方都沒有對鍵進行硬編碼。
const data = {
firstname: 'Mike,Henry,Pete',
lastname: 'Port,Split,Micky',
age: '10,100,20'
};
// Get the keys and values from the object
const keys = Object.keys(data);
const values = Object.values(data).map(str => str.split(','));
// Temporary array
const out = [];
// Loop over the values array
for (let i = 0; i < values.length; i ) {
// Initialise an empty object
// for each nested array
const obj = {};
// Loop over the keys, create a new object with
// that key, and the element of the nested value array
// and merge it with the object
for (let j = 0; j < keys.length; j ) {
const prop = { [keys[j]]: values[j][i] };
Object.assign(obj, prop);
}
// Push the object to the array
out.push(obj);
}
console.log(out);
附加檔案
Object.keysObject.keysObject.assign
uj5u.com熱心網友回復:
這是代碼:
var data = "Mike Port, Henry Split, Pete Micky";
function parseData(data){
data = data.split(', ')
let arr = []
for(i=0;i<data.length;i ){
arr.push({firstName:data[i].split(' ')[0].replace(',',''),lastName:data[i].split(' ')[1]})
}
return arr
}
console.log(parseData(data))
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/480987.html
標籤:javascript 数组 目的 方法
