js中關於this指向的解答

2021-10-21 07:11:54 字數 1065 閱讀 4011

function

person()

person()

;//輸出

此時this的指向是並不是person,而是 window ,因為函式也是window物件裡面的, 因此輸出的是window。

var name =

"小明"

;var person=

} person.

showname()

;// 輸出小紅

此時的this指向person物件

function

person

(name)

var personx=

person

("翠花");

//personx沒有new 沒有例項化

// console.log(personx.name); //undefined 報錯

//建構函式沒有通過new構造物件,相當於window物件呼叫 person("翠花")方法。

// 所以this指向的是window物件,並進行賦值window.name="翠花"。

console.

log(window.name)

;//輸出翠花

var persony =

newperson

("秋香");

//例項化建構函式 得到例項物件

console.

log(persony.name)

;//輸出 秋香

personx 物件因為沒有new進行例項化,因此如果直接personx.name 呼叫會報錯,此時的this指向window,通過window.name 可以將翠花進行輸出。

//建構函式沒有通過new構造物件,相當於window物件呼叫person(「翠花」)方法。

// 所以this指向的是window物件,並進行賦值window.name=「翠花」。

persony 物件經過new進行例項化之後,此時this就指向persony ,因此可以直接輸出persony.name 。

關於js中的this指向問題

1.在普通函式和全域性環境下 this指向window function demo demo console.log this x 102.建構函式 建構函式就是函式new出來的物件,所以this指向該物件 function foo var foo newfoo console.log foo.x ...

關於JS中this的指向問題

例項在方法中,this 指的是所有者物件。單獨的情況下,this 指的是全域性物件。在函式中,this 指的是全域性物件。在函式中,嚴格模式下,this 是 undefined。在事件中,this 指的是接收事件的元素。this的指向在函式定義的時候是確定不了的,只有函式執行的時候才能確定this到...

js中this的指向

lang en charset utf 8 深入理解thistitle head 它代表函式執行時,自動生成的乙個內部物件,只能在函式內部使用。隨著函式使用場合的不同,this的值會發生變化。但是有乙個總的原則,那就是this指的是,呼叫函式的那個物件。demo1 function demo1 呼叫...