关键字this没有给我当前对象,只有它的父对象.如何得到当前对象
The keyword this is not giving me the current object, only its parent. How do I get at the current object?
我正在尝试创建一个指向当前对象/函数的变量。
我错误地认为this
会这样做:
var fn1=function(){
var _this=this;
_this.prop='hey!';
console.log(_this);
};
控制台日志输出浏览器窗口对象,这让我感到困惑,直到我读到this
:
this
关键字功能上下文
谁能解释给我为什么,在javascript中,this
指的是父母?
作为所有this
的结果,我一直在考虑使用类似this
的东西:
var fn2=function(){
var _this=(function(){
return this;
})();
_this.prop='hey!';
console.log(_this);
};
但是,是否有更好的方法或简单的正确的方法,我错过了,从内部获得当前对象?
谁能解释给我为什么,在javascript中,
this
指的是父母?
this
的值取决于你如何调用函数。
如果你在对象(foo.method()
)的上下文中调用函数,那么this
就是foo
,因为在执行OOP时访问方法所属的对象是有用的。
但是,是否有更好的方法或简单的正确的方法,我错过了,从内部获得当前对象?
当前对象是什么?
如果要使用构造函数,则使用new
关键字。
function Dog(name, breed) {
this._name = name;
this._breed = breed;
}
var myDog = new Dog("Fifi", "Poodle");
alert(myDog._name);
相关文章:
- XUL文档与HTML文档对象有何不同
- Javascript对象:这两个值有何不同
- 为什么mongoose.connect()在mongoose对象上没有作为方法出现时工作得很好
- 什么是声明性环境记录,它与激活对象有何不同
- JavaScript 对象在创建时会变得疯狂
- 当仅通过 geojson 对象添加几个标记时,传单变得非常慢
- 为什么当我将变量复制到窗口对象时,它变得公共
- 我正在克隆/复制javascript对象.我做得对吗
- 如何使与jquery延迟对象一起工作的函数表现得像同步函数
- 全局javascript变量在对象构造函数的一部分中变得未定义
- 为什么在为画布元素设置动画时透明对象会变得不透明
- 渐进地“;揭示“;Three.js中的一个三维对象--我做得对吗
- JavaScript函数对象与Scala函数对象有何不同
- JavaScript启动得太快了.对象未加载
- 在多大深度上,对对象文字的搜索变得比O(1)慢
- 对象指针突然变得未定义
- 你如何做网络动画的对象进来,他们的位置变得可见
- Javascript对象在for循环中变得未定义
- 当移动到函数(nodejs, express)时,请求和响应对象变得未定义
- NodeJS:如果冻结对象,应用程序会运行得更快吗