javascript - js的对象继承问题
迷茫
迷茫 2017-04-11 09:48:46
[JavaScript讨论组]
function main(){
    var _this = {};
    _this.say = function(){
        alert('haha');
    }
    _this.name = 'lucy';
    return _this;
}
function extand(){
    var _this = main();
    return _this;
}
var p = extand();
p.say();

最后一行,请问为什么p.say这样写就不行了,调用别的什么属性不都是直接用就行了吗,比如调用名字p.name就可以输出lucy了

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(3)
高洛峰

你可以alert一下p.say()和p.say。
前者相当于是一个执行语句,它会执行p.say这个function,而后者只会获得这个function的声明。

巴扎黑

因为你说的p.name的name是个基本类型值,而say是函数,属于引用类型值。

伊谢尔伦

楼上正解, p.say 是个 function(){} 啊

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号