本节:数组数据的整合提取。提取单个数据
数据
// 删除,从012,第三位开始,删除2位数
数组.splice(2,2);
题目1:提取(单个数据)用户邮箱,组成数组。
答案:
let output01 = []; //1.定义一个新的数组,来存放循循环提取出来的信息
for (let d of data01) { //2.循环数组,提取信息
output01.push(d["email"]) // 一整个数组用push存放数据,单个对象用下标
// 这里提取的email的数据
}
console.log(output01);
题目2:提取数据,变成数组,里面有多个对象,每个对象都有对应的属性名。
把output02 变成 [{name:"Jeanette",gender:"Female"},{name:"Giavani",gender:"Male"},{name:"Noell",gender:"Female"},{name:"Willard",gender:"Male"},]
答案:
let output02 = [];// 1. 定义一个数组
for (let d2 of data01) { //2.循环数据
output02.push({ "name": d2.first_name, "gender": d2.gender });
// 以 数组名.push({"定义的属性名":指针.消息名,"定义的属性名":指针.消息名});
}
console.log(output02);
题目3:数组,分属性,分男的和女的。
把output03 变成 {Female:["Jeanette","Noell"],Male:["Giavani","Willard"]}
答案:
//把output03 变成 {Female:["Jeanette","Noell"],Male:["Giavani","Willard"]}
let output03 = {};//定义数组
let Female = [];//定义对象
let Male = [];//定义对象
for(let d of data01){ //1.循环数组
if(d["gender"] == "Female"){ //2.判断如果gender属性值等于Female
Female.push(d["first_name"]); //3.则将这里面的内容,放到Female
}
if(d["gender"] == "Male"){ //判断如果gender属性值等于male
Male.push(d["first_name"]); //则将这里面的内容,放到male
}
}
题目4:获取数据,进行分类命名,里面还有定义好了的属性名和数据信息。
//把output04 变成 {Female:[{name:"Jeanette",email:"jpenddreth0@census.com"},{name:"Noell",email:"nbea2@imageshack.us"}],Male:[{name:"Giavani",email:"gfrediani1@senate.com"},{name:"Willard",email:"wvalek3@vk.com"}]}
答案:
let output04 = {}// 定义数组
let Female2 = [];// 定义对象
let Male2 = [];// 定义对象
for (let d4 of data01) { //1.循环数组
if (d4.id % 2 == 0) { //2.判断如果为偶数则为女的
Female2.push({ "name": d4.first_name, "email": d4.email }); // 3.为女的,则把数据放到Female2
} else {
Male2.push({ "name": d4.first_name, "email": d4.email });// 为男的,则把数据放到Male2
}
}
output04["Female"] = Female2; //4. 把刚刚分好类的对象,放到同一个数组里面。
output04["Male"] = Male2; // 把刚刚分好类的对象,放到同一个数组里面。
console.log(output04); //就可以达到题目要的效果
题目5:分类id,对应分类的商品。
把output05 变成 [{id:1,name:"电器",goods:[{id:102,name:"钢铁侠"},{id:103,name:"大米"}]},{id:2,name:"食物",{id:100,name:"盲果"},{id:101,name:"西瓜霜"}}]
let gooods1 = [] //定义放商品的对象1
let gooods2 = [] //定义放的商品对象2
for(let g of goods){ //1.循环数组
if(g.categoryId == 1){ // 2.如果分类ID等于1
gooods1.push({id:g["id"],name:g["name"]}); //3. 如果分类id为1 ,则把数据放到这个对象里面
}
if(g.categoryId == 2){
gooods2.push({id:g["id"],name:g["name"]}); //如果分类id为2 ,则把数据放到这个对象里面
}
}
categorys[0]["goods"] = gooods1; //因为是对象,所以赋值的时候,用下标,存放
categorys[1]["goods"] = gooods2; //因为是对象,所以赋值的时候,用下标,存放
categorys.splice(2,1) //删掉012,第三个,删除一个
console.log(categorys); //输出 数组