大家好,我已將一個類/物件推入如下陣列:
class AllCar {
constructor(){
this.carList=[]
}
addCar(newCar){
this.carList.push(newCar)
}
}
class Car {
constructor(name, year, model) {
this.name = name;
this.year = year;
this.model = model;
}
}
const myCar = new Car("Ford", 2014, "Mustang");
const myCar2 = new Car("Toyota", 2014, "Vios");
const myCar3 = new Car("Honda", 2014, "City");
console.log(myCar)
console.log(myCar.model)
const myCars= new AllCar()
myCars.addCar(myCar)
myCars.addCar(myCar2)
myCars.addCar(myCar3)
console.log(myCars.carList)
在類/物件進入陣列之前。我只能為模型輸出 console.log(myCar.model) 。推入陣列后,我無法從屬性中進行選擇,但只能顯示整個串列([Car {...},Car {...},Car {...}])。如何過濾 carList(例如過濾年份“2014”)并僅顯示輸出模型([“Mustang”,“Vios”,“City”])或僅顯示名稱[“Ford”,“Toyota”,“Honda "] 沒有鑰匙。
uj5u.com熱心網友回復:
使用陣列方法
class AllCar {
constructor(){
this.carList=[]
}
addCar(newCar){
this.carList.push(newCar)
}
}
class Car {
constructor(name, year, model) {
this.name = name;
this.year = year;
this.model = model;
}
}
const myCar = new Car("Ford", 2014, "Mustang");
const myCar2 = new Car("Toyota", 2014, "Vios");
const myCar3 = new Car("Honda", 2014, "City");
const myCars= new AllCar()
myCars.addCar(myCar)
myCars.addCar(myCar2)
myCars.addCar(myCar3)
console.log(myCars.carList.filter(car => car.year === 2014).map(car => car.model))
uj5u.com熱心網友回復:
// You can use the filter method present in javascript for arrays.
// **** YOUR CODE START ****
class AllCar {
constructor() {
this.carList = [];
}
addCar(newCar) {
this.carList.push(newCar);
}
}
class Car {
constructor(name, year, model) {
this.name = name;
this.year = year;
this.model = model;
}
}
const myCar = new Car("Ford", 2014, "Mustang");
const myCar2 = new Car("Toyota", 2013, "Vios");
const myCar3 = new Car("Honda", 2011, "City");
console.log(myCar);
console.log(myCar.model);
const myCars = new AllCar();
myCars.addCar(myCar);
myCars.addCar(myCar2);
myCars.addCar(myCar3);
console.log(myCars);
// ****YOUR CODE END ****
// *** WHAT YOU CAN DO START ****
const filterCar = (UserYear) => {
let filteredCar = myCars.carList.filter((item) => item.year === UserYear);
console.log(filteredCar);
};
filterCar(2014);
// *** WHAT YOU CAN DO END ****
uj5u.com熱心網友回復:
使用Array.prototype.map和Array.prototype.filter。
[…]
const myCars= new AllCar()
myCars.addCar(myCar)
myCars.addCar(myCar2)
myCars.addCar(myCar3)
console.log(myCars.carList.filter(car => car.year === 2014)); // lists only cars made in 2014
console.log(myCars.carList.map(car => car.model)); // Show only model names
console.log(myCars.carList.filter(car => car.year === 2014).map(car => car.model)); // you can chain them!
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/506820.html
標籤:javascript 哎呀
