第一關(guān):對(duì)象的創(chuàng)建
任務(wù)描述
使用對(duì)象字面量方法創(chuàng)建名為student的對(duì)象,有兩個(gè)屬性name和gender,他們的值分別是mainJs()函數(shù)的參數(shù)a和參數(shù)b;
使用已給的構(gòu)造函數(shù)Car(plate,owner)創(chuàng)建一個(gè)對(duì)象myCar,它的兩個(gè)屬性的值分別是參數(shù)c和參數(shù)d;
使用原型創(chuàng)建一個(gè)對(duì)象myJob,它的構(gòu)造函數(shù)是Job(company,salary),它的兩個(gè)屬性的值已經(jīng)被設(shè)置,你需要用參數(shù)e覆蓋屬性company的值。
編程內(nèi)容
function Car(plate,owner) {
this.plate = plate;
this.owner = owner;
}
function Job() {};
Job.prototype.company = "myCompany";
Job.prototype.salary = 12000;
function mainJs(a,b,c,d,e) {
//請(qǐng)?jiān)诖颂幘帉?xiě)代碼
/*********bigin*********/
var student = new Object();
student.name = a;
student.gender = b;
var myCar = new Car(c,d);
var myJob = new Job();
myJob.company = e;
/*********end*********/
return student.name+student.gender+myCar.plate+myCar.owner+myJob.company;
}
第二關(guān):屬性的增刪改查
任務(wù)描述
請(qǐng)補(bǔ)全右側(cè)代碼片段,使函數(shù)reviseAttribute(reviser,date,attvalue) 具備根據(jù)傳入?yún)?shù)修改store對(duì)象的屬性的功能,具體要求如下:
如果調(diào)用函數(shù)reviseAttribute(reviser,date,attvalue)并傳入值 Alice,1,1000那么對(duì)應(yīng)store的day1屬性的值就修改為1000,accountant屬性的值修改為Alice。
編程內(nèi)容
var store = {
name:"Luma Restaurant",
location:"No 22,Cot Road",
accountant:"Vivian Xie",
day1:3200,
day2:3200,
day3:3200,
day4:3200,
day5:3200,
day6:3200,
day7:3200,
day8:3200,
day9:3200,
day10:3200
}
function reviseAttribute(reviser,date,attValue) {
//Convert string to integer
attValue = parseInt(attValue);
//請(qǐng)?jiān)诖颂幘帉?xiě)代碼
/*********begin*********/
store.accountant = reviser;
var ds = "day" + date;
store[ds] = attValue;
/*********end*********/
var totalSales = store["day1"]+store["day2"]+store["day3"]+store["day4"]+store["day5"]+store["day6"]+store["day7"]+store["day8"]+store["day9"]+store["day10"];
return totalSales+store.accountant;
}
第三關(guān):屬性的檢測(cè)和枚舉
任務(wù)描述
有兩個(gè)可選的對(duì)象orange和car,判斷給定的屬性名a屬于哪一個(gè)對(duì)象;
返回該對(duì)象的所有自有屬性名組成的字符串,例如:如果判斷為car,則返回brandpricemodel;
給定的兩個(gè)對(duì)象的自有屬性都是可枚舉的。
編程內(nèi)容
var orange = {
weight:"200g",
color:"orange",
taste:"sour"
};
var car = {
brand:"Jaguar",
price:"$80000",
model:"XFL"
}
function mainJs(a){
//請(qǐng)?jiān)诖颂幘帉?xiě)代碼
/*********begin*********/
var b = "";
if(a in orange){
for(var att in orange){
b = b.concat(att);
}
}
else if(a in car){
for(var att in car){
b = b.concat(att);
}
}
return b;
/*********end*********/
}