读书人

第二段代码优势在哪?解决思路

发布时间: 2012-03-19 22:03:05 作者: rapoo

第二段代码,优势在哪?

JScript code
            function Odemo(name)            {                this.name1=name;                this.sayName=sayName;    //引用外面的函数            }                                 function sayName()            {                return this.name1;            }                        var a=new Odemo('aaa');            alert(a.sayName());                        var b=new Odemo('bbb');            alert(b.sayName());                        alert(a.sayName==b.sayName);    //显示true


JScript code
                function Odemo(){}                Odemo.prototype.name='abc';                Odemo.prototype.sayName=function()                {                    return this.name;                }                                var a=new Odemo();                alert(a.sayName());    //显示abc                                var b=new Odemo();                alert(b.sayName());    //显示abc                                alert(a.syaName==b.sayName);    //显示false


第一段代码的sayName是相等的
第二段则不相等的

是不是说第二段每new一次Odemo
就创建了一个新的对象?

那这样,相对比第一段,优势在哪?

[解决办法]
保护变量。。
[解决办法]
第二段最后一句a.syaName拼写错了,拜托别拿这种低级错误在这浪费大家感情好么?
这两段代码的区别在于,第一段的name是独立的,第二段的name是共享的,仅此而已,sayName都是同一个

读书人网 >JavaScript

热点推荐