zoukankan      html  css  js  c++  java
  • 谁的属性值优先被访问

    1. 重写原型对象与默认原型对象比较

    • 重写原型对象相当于新建一块空间,与默认的原型对象相互独立
    • 实例会指向离其被创建时最近的原型对象。
            function Person(){
            }
    
            Person.prototype = {
                constructor: Person,
                name : "Nicholas",
            };
            
            Person.prototype.name="Betty";
    
             var friend = new Person();      
            alert(friend.name);   //Betty
    
    
            function Person(){
            }
            Person.prototype.name="Betty";
    
            Person.prototype = {
                constructor: Person,
                name : "Nicholas",
    
            };
    
             var friend = new Person();       
            alert(friend.name);   //Nicholas
    
    

    说明: 先创建了Person的一个实例,然后,给默认原型赋值和重写了其原型对象。代码一friend被创建时,离默认原型近,故friend指向默认原型。而代码二的friend被创建时,临近重写原型,friend指向重写原型。

    2. 实例与原型的同名属性比较

            function Person(){
            }
    
            
            Person.prototype.name="Betty";
             var friend = new Person();
            friend.name="Kitty";
            alert(friend.name);   //Kitty
    

    说明:实例属性必须跟在实例被创建后,才正常执行。

            function Person(){
            }
            friend.name="Kitty";
    
            Person.prototype = {
                constructor: Person,
                name : "Nicholas",
            };
            
            Person.prototype.name="Betty";
             var friend = new Person();
    
            alert(friend.name);   //无结果
    
  • 相关阅读:
    ISBN号码
    计数问题
    小玉在游泳
    数字反转
    单调队列(学习笔记)
    LCA(学习笔记)
    emacs配置文件
    线段树(学习笔记)
    RMQ问题 ST算法(学习笔记)
    Lucas卢卡斯定理(学习笔记)
  • 原文地址:https://www.cnblogs.com/KarmaDeng/p/7400869.html
Copyright © 2011-2022 走看看