老师,是这么做的吗?

老师,是这么做的吗?

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title>Document</title>

</head>

<body>

    <script type="text/javascript">

    var Person = (function() {

        // 此处填写代码

var instance=null;

        return function() {

            // 此处填写代码

if(instance){

return instance;

}

            this.name = 'zhangsan';

            this.id = Math.random();

return instance=this;

        }

    })();


    var Person1 = new Person();

    var Person2 = new Person();

    console.log(Person1 == Person2);

    </script>

</body>

</html>


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕星星 2018-11-23 09:50:10

同学,非常抱歉,老师第一次在代码中没有修改完整:

http://img1.sycdn.imooc.com//climg/5bf75b110001b2c004690338.jpg

应该在if条件中判断中赋值instance,最后再返回。

自己可以测试下。

好帮手慕星星 2018-10-18 10:36:39

http://img1.sycdn.imooc.com//climg/5bc7f18a000198e104890538.jpg

开始定义的instance为null,所以在if条件判断中,应该是!instance。

下面代码是正确的呢,祝学习愉快!

  • 提问者 沧海的雨季 #1
    如果!instance不是为非null,那不就是真?执行了还是null..不会往下执行了吧? 我写!insetance两个person比较为false...
    2018-11-22 21:18:49
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
组件化思想开发电商网页 18版
  • 参与学习           人
  • 提交作业       467    份
  • 解答问题       4826    个

本路径带你通过系统学习HTML5、JavaScript、jQuery的进阶知识,不仅如此,还会学习如何利用组件化的思想来开发网页,知识点+案例,使得所学可以更好的得到实践。

了解课程
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师