如何找到javascript中当前指向的内容的文字说明。
我已经尝试过this.name但只是未定义。
答案 0 :(得分:2)
this.toString()
- 我认为这是你能得到的最好的
编辑:您还可以尝试循环访问对象的属性以查看它包含的内容:
for (property in this) {
console.log(property);
}
答案 1 :(得分:0)
总是有类型:
var type = typeof obj;
但是,这不是万无一失的,因为你只会获得对象的“对象”......
答案 2 :(得分:0)
如果您使用的是Firebug,则可以使用console.log(this)
。然后控制台应该提供您刚刚记录的任何内容的可点击表示,点击它可以带您进行更详细的解释。
答案 3 :(得分:0)
好吧,我仍然不是完全确定你想要什么,但我已经把这个演示放在JS Fiddle,让你知道几个可用的选项。
它取决于使用:
$('#result').text(this.tagName.toLowerCase());
或
$('#result').text(typeof this);
答案 4 :(得分:0)
对象在JavaScript中没有名称,就这么简单。具有特定名称的变量可以具有对象作为其值,但就关系而言,该对象不保留对指向它的变量名称的引用。事实上,不止一个变量可能指向它。如果对对象的引用作为属性存储在另一个对象上,则可以迭代该对象的属性,以检查当前属性的值是否与 this 值中的同一对象相同。例如:
for (var k in someObj) {
if (this == someObj[k])
console.log(k + " points to this.");
}
但是,我不认为你有必要这样做。
答案 5 :(得分:0)
不需要Firebug(http://jsfiddle.net/Y57ed/2/演示):
function usefulTypeof(obj) {
return obj === null ? "null" :
obj.constructor.toString().replace(/[^\w$\s]+/g, "").split(/\s+/)[1];
}