this關鍵字
this可以用在建構函式之中,表示例項物件。除此之外,this還可以用在別的場合。但不管是什麼場合,this都有乙個共同點:它總是返回乙個物件。簡單說,this就是屬性或方法「當前」所在的物件。
var person = };
person.describe()// "姓名:張三"
上面**中,this.name表示name屬性所在的那個物件。由於this.name是在describe方法中呼叫,而describe方法所在的當前物件是person,因此this指向person,this.name就是person.name。
this主要有以下幾個使用場合
1.全域性環境
全域性環境使用this,它指的就是頂層物件window。例如:
function f()
f() // true
注意:在嚴格模式下,普通函式內部 this 等於undefined。
2.建構函式
建構函式中的this,指的是例項物件。例如:
function person(p) ;
var obj = new person()
3.物件的方法
如果物件的方法裡面包含this,this的指向就是方法執行時所在的物件。例如:
var obj =};
console.log(obj.foo()) // obj
bind方法
bind方法用於將函式體內的this繫結到某個物件,然後返回乙個新函式。
var dog =
}var person =
var func = dog.wang.bind(person)
func();
//上面**將person繫結到了func函式內部
es6之let,const關鍵字
在es5中沒有塊級作用域,只有函式作用域和全域性作用域,例如不能成為乙個作用域,但在es6中可以 for var i 0 i 4 i console.log i i 4這是因為i是在全域性的,最後列印的是for迴圈裡面最後的結果。用let替換var則結果為not defined。for let i ...
ES6 之關鍵字 let
正如大家都熟悉的,我們平時在寫 的時候,用var 宣告乙個變數,除此之外,也再沒有接觸到其它的關鍵字了,不管我們宣告什麼樣型別得變數,都用var 搞定了,很方便,但是es6 告訴你,除了var,還可以試試 let 來宣告變數。那麼,既然var 方便,為什麼還要let 來宣告,這麼說 var 宣告 一...
ES6之關鍵字const
const是constant 常量 的縮寫,const和 let一樣,也是用來宣告變數的,但是const是專門用於宣告乙個常量的,顧名思義,常量的值是不可改變的。const的特點 1 不可更改 1 2 const name 張三 name 李四 錯誤,企圖修改常量name 2 只在塊級作用域起作用,...