<script>
alert("haha");
document.write("haha");
function fun(){
console.log(" i am console");
}
fun();
function fun1(name ,age,sex) {
this.name=name;
this.age=age;
this.sex=sex;
this.sayName=fun11;//为什么这里调用函数名的时候不用打括号
}
function fun11(){<
console.log("hello,i am "+this.name);
}
var obj=new fun1('tmk',12,'man');
obj.sayName();
console.log(obj instanceof fun1);
</script>js 构造函数中方法中点调用函数的问题
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
幻灰龙 2021-02-05 10:11关注直接的回答:
- 在JavaScript里面function是一等公民,函数可以被赋值给变量,等待需要调用的时候再调用。
- 12行的是fun11被赋值给fun1的成员变量this.sayName,这里不是函数调用,而是把函数赋值给了sayName这个变量
- 17行使用func1构造了一个对象obj,这个obj是func1的一个实例,这个实例构造的时候把func11赋值给了obj.sayName
- 18行调用了obj.sayName,实际上就是调用了func11
根本的问题:
- 你需要系统学习JavaScript,从基础上真正掌握JavaScript。
- 例如系统过一遍 《ES6入门教程》(https://es6.ruanyifeng.com/)
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报