在js中,函数和方法是不同的。
函数定义
function fun() {
console.log("123456");
}
上边的 fun() 是函数。
方法定义
var obj = new Object();
obj = {
"name": "张三",
"age": 18
}
obj.out = function() {
console.log(obj.name);
}
obj.out();
上边的 obj.out() 是方法。
this指向问题
在函数中
function fun() {
console.log(this);
}
此时this输出为window对象
在方法中
var obj = new Object();
obj = {
"name": "张三",
"age": 18
}
obj.out = function() {
console.log(obj.name);
console.log(this);
}
obj.out();
输出为obj这个对象里边的内容
this中的区别:以函数调用的时候,this的指向就是window;以方法调用的时候,this的指向就是调用方法的那个对象