JS-函數(shù)補(bǔ)充及對(duì)象2021-12-03

函數(shù)補(bǔ)充

1.arguments

arguments對(duì)象里面保存這方法的所有參數(shù)

arguments對(duì)象里面有個(gè)一個(gè)callee方法,該方法指向當(dāng)前方法本身

functioncalc(num){

if(num===1){

return num

}

// 因?yàn)閍rguments.callee 就時(shí) 指向當(dāng)前方法本身。

// 這樣的做的好處是,防止外部方法名修改后,導(dǎo)致遞歸調(diào)用失效。

let sum=num+arguments.callee(num-1)

return sum

}

2.分頁(yè)方法

//定義一個(gè)分頁(yè)方法,方法的三個(gè)參數(shù)分別是:原始數(shù)組,頁(yè)碼,每頁(yè)數(shù)量

functionpageData(arr,pageIndex,pageSize){

//思路:就是對(duì)原始數(shù)組中的數(shù)據(jù),做截取

//定義截取數(shù)據(jù)的起始位置l

etstart=(pageIndex-1)*pageSize

//定義截取數(shù)據(jù)的結(jié)束位置

letend=start+pageSizereturnarr.slice(start,end)

}

對(duì)象

如果 a.b ,那么a就是對(duì)象,b是a的屬性

如果 a.c(),那么a就是對(duì)象,c是a的方法

對(duì)象就是擁有一組屬性和方法的集合

定義對(duì)象有兩種方式:1.采用字面量賦值方式直接定義。2.采用構(gòu)造函數(shù)的方式new一個(gè)對(duì)象

1.采用字面量賦值方式定義對(duì)象

通過(guò)對(duì)象名.屬性,調(diào)用對(duì)象的屬性,可以獲取屬性的值,也可以修改屬性的值,也可以添加新的屬性

通過(guò)對(duì)象名.方法(),調(diào)用對(duì)象的方法,執(zhí)行方法里面的代碼

案例:

?let calc = {

? ? ? ? ? ? num1:0,

? ? ? ? ? ? num2:0,

? ? ? ? ? ? jia(){

? ? ? ? ? ? ? ? console.log(`${this.num1}+${this.num2}=${this.num1+this.num2}`);

? ? ? ? ? ? },

? ? ? ? ? ? jian(){

? ? ? ? ? ? ? ? console.log(`${this.num1}-${this.num2}=${this.num1-this.num2}`);

? ? ? ? ? ? },

? ? ? ? ? ? cheng(){

? ? ? ? ? ? ? ? console.log(`${this.num1}*${this.num2}=${this.num1*this.num2}`);

? ? ? ? ? ? },

? ? ? ? ? ? chu(){

? ? ? ? ? ? ? ? console.log(`${this.num1}/${this.num2}=${this.num1/this.num2}`);

? ? ? ? ? ? }

? ? ? ? }

? ? ? ? calc.num1=200

? ? ? ? calc.num2=20

? ? ? ? calc.jia()

? ? ? ? calc.jian()

? ? ? ? calc.cheng()

? ? ? ? calc.chu()

2.采用構(gòu)造函數(shù)的方式new一個(gè)對(duì)象

?// 構(gòu)造函數(shù);首先是個(gè)函數(shù),這個(gè)函數(shù)用來(lái)創(chuàng)建出對(duì)象

// 可以使用系統(tǒng)構(gòu)造函數(shù)object創(chuàng)建一個(gè)對(duì)象

? ? ? ? let obj= new Object()

? ? ? ? console.log(obj);

? ? ? ? let obj1 = {}

? ? ? ? console.log(obj1);

? ? ? ? console.log('-----------------------');

?//多數(shù)情況下,都是先自定義一個(gè)構(gòu)造函數(shù),再通過(guò)自定義的構(gòu)造函數(shù)創(chuàng)建出對(duì)應(yīng)的對(duì)象

?// 可以將構(gòu)造函數(shù)理解成:類(lèi)

? ? ? ? function Student(no,name,age,sex) {

? ? ? ? ? ? this.no=no

? ? ? ? ? ? this.name=name

? ? ? ? ? ? this.age=age

? ? ? ? ? ? this.sex=sex

? ? ? ? }

// 通過(guò)類(lèi)型構(gòu)造函數(shù)樂(lè)意創(chuàng)建出無(wú)數(shù)個(gè)對(duì)象

? ? ? ? let s1=new Student(1001,'張三',20,'男')

? ? ? ? console.log(s1);

? ? ? ? let s2=new Student(1002,'李四',19,'女')

? ? ? ? console.log(s2);

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容