有沒有辦法獲得this
所指的對象的確切名稱,而不僅僅是object Object
?我怎樣才能得到究竟什麼。這是指向
1
A
回答
3
不,沒有。 JavaScript中的對象本身並不具有名稱。相反,它有一組指向它的命名引用(或可能沒有)。 this
值只是其中的一個參考。
// The {} is an object without a name. Here 'x' is a reference
// to that object
var x = {};
// Now 'y' refers to the same object as 'x'. But neither 'x'
// nor 'y' is the name of the object.
var y = x;
2
沒有,但你可以看到什麼this
在任何給定時間轉儲到控制檯:
console.log(this);
0
「本」也只是另一個別名你的對象,有可能是許多指向與「this」相同的變量名指向。沒有已知的方法來獲取對象創建的原始名稱(如果有的話)。你可以得到的最好的是類型「這個」
Object.prototype.toString.call(this)
1
你可以嘗試這樣的事情,即使它不會在某些情況下工作:
function R3S(){
this.a = function(){
whoIs(this);
}
}
function whoIs(obj) {
console.log(/(\w+)\(/.exec(obj.constructor.toString())[1]);
}
var t = new R3S();
whoIs(t);
t.a();
var l = t;
l.a();
希望這有助於。 也許你還想看看這篇文章:How to get class object's name as a string in Javascript?
相關問題
- 1. 我們究竟怎樣才能到**所有碎片**
- 2. 我怎樣才能得到這些值
- 3. 我怎樣才能得到
- 4. 我怎樣才能得到
- 5. NinjaMyApp:什麼是FMNowAccountKey,我怎樣才能得到它
- 6. 我怎樣才能得到這個自頂向下的射手?
- 7. 我怎樣才能看到究竟包含了一個屬性變量?
- 8. 我怎樣才能得到這是與Facebook請求
- 9. 我怎樣才能得到這個函數是尾遞歸?
- 10. readerQuotas - > maxStringContentLength究竟是指什麼?
- 11. 我怎樣才能知道這是做什麼?
- 12. C++:究竟是什麼「:」在這裏做?
- 13. 好的,這工作。究竟是什麼?
- 14. 這個typedef究竟是什麼意思?
- 15. 這個錯誤究竟是什麼?
- 16. 這種類型究竟是什麼?
- 17. cURL:我怎樣才能得到我已經重定向到
- 18. 我怎樣才能得到一個JSON像這樣用JavaScript
- 19. 我怎樣才能得到這樣的陣列
- 20. 我怎樣才能找到什麼是停止我的活動
- 21. 我怎樣才能找到我的密碼標識是什麼?
- 22. 這是錯的,但爲什麼(我怎樣才能讓它流動得更好)?
- 23. 我怎樣才能得到Parsley.js
- 24. 我怎樣才能得到Queryable.Join的MethodInfo
- 25. 我怎樣才能得到父組件
- 26. 我怎樣才能得到一個TD
- 27. 我怎樣才能得到的數字
- 28. 我怎樣才能得到statechange
- 29. 我怎樣才能得到其他表
- 30. 我怎樣才能得到一個RejectedExecutionException
對象的名稱?在變量名稱中?如果是這樣,不。 – mpen 2012-03-25 18:15:19
你是否在做任何事情來提醒對象? – pimvdb 2012-03-25 18:26:15