構(gòu)造函數(shù)是
Constructor Function
構(gòu)造函數(shù),他是一個(gè)普通函數(shù)暇检,其次产阱,他是個(gè)構(gòu)造器
定義:構(gòu)造函數(shù)就是構(gòu)建對(duì)象類型的特殊函數(shù)
創(chuàng)造構(gòu)造函數(shù)人
function Xm(){
this.name = "白術(shù)",
this.age = 18
}
//將方法定義再原型對(duì)象身上
Xm.prototype.walk = function(){
console.log("I love you");
}
const rem = new Xm()
console.log("?? ~ file: 1.html:19 ~ rem:", rem)
面向過程編程
- 一:做什么
- 二:做什么
- 三:做什么
- 最后:實(shí)現(xiàn)目標(biāo)
面向?qū)ο缶幊?/h2>
- 一:找對(duì)象A
- 二:把做什么1.做什么3.作為方法綁定到對(duì)象身上。
- 三:找對(duì)象B
- 四:把做什么1.做什么3.作為方法綁定到對(duì)象身上占哟。
- 五:最后實(shí)現(xiàn)目標(biāo)心墅。
單詞:
- pnce:破軟
- color
- Brand:不r安德 品牌
- inpo :信息
- IT :信號(hào)技術(shù)
Class是什么
- 廣義來說:比如C#,JAVA的核心都是基于類(class)
- JS的核心基礎(chǔ)基于原型(prototype)
- 什么是類榨乎?
- class就是類類就是構(gòu)建對(duì)象的模板
- 思考:js是如何用構(gòu)建對(duì)象模板怎燥?(構(gòu)建函數(shù)+prototype+new)
- ES6,希望把構(gòu)建對(duì)象模板這件事以一種顯示的蜜暑,明確的方式確定下來铐姚。
ES6之前,構(gòu)建對(duì)象模板這件事是隱式的肛捍,沒有明確提類的概念隐绵。 - 為了解決這件事,ES6引入了Class關(guān)鍵字來決定這件事
- class是構(gòu)造函數(shù)+prototype+new的一種語法糖
語法糖是一個(gè)更簡潔的語法術(shù)語拙毫,語法糖是指語言中的一個(gè)構(gòu)件依许,當(dāng)去掉該構(gòu)件后并不影響語言的功能和表達(dá)能力
Class語法
基礎(chǔ)語法:
lass 類名{
constructor(){}//內(nèi)置構(gòu)造函數(shù),必須寫
fn1()//相當(dāng)于定義在原型對(duì)象上的方法缀蹄。
fn2()
//...
fnN()
}
示例:
class Pen{
constructor(brand, colour, price){
this.brand = brand,
this.colour = colour,
this.price = price
}//內(nèi)置構(gòu)造函數(shù)峭跳,必須寫
showInfo() {console.log("信息:" + this.brand, this.colour, this.price); }//相當(dāng)于定義在原型對(duì)象上的方法膘婶。
}
const pen1 = new Pen("小呆", "red", 18)
pen1.showInfo()
replace
蕊破類似
代替,替換
re:是英語的一個(gè)前綴,表示“重復(fù)”
place:位置蛀醉,地點(diǎn)
String.prototype.replace()
let str = "hello"
定義:使用指定字符串替換匹配字符串悬襟。
語法:
string.replace(匹配到的字符.新字符)
string.replace(匹配到的正則,新字符)
返回值:返回替換后的新字符串拯刁,原始字符串不可以修改脊岳。
void expression
void
操作者評(píng)估給出 expression
然后返回 undefined
.
語法:
void expression
- 這個(gè)操作者允許評(píng)估的表達(dá)產(chǎn)生的價(jià)值進(jìn)入的地方一個(gè) 表達(dá)式
undefined
是需要的。 -
void
操作者往往是僅僅用于得到的undefined
原始價(jià)值垛玻,通常使用void(0)
(這是 相當(dāng)于void 0
). 在這些情況下割捅,全球變undefined
可以使用。
void 2 === "2"; // (void 2) === '2', returns false
void (2 === "2"); // void (2 === '2'), returns undefined