美文网首页
ali面试题

ali面试题

作者: 大福爸爸_ | 来源:发表于2020-04-01 15:08 被阅读0次

    阿里面试题

    function Foo() {
        getName = function() {
            console.log(1);
        }
        return this;
    }
    
    Foo.getName = function() {
        console.log(2);
    }
    
    Foo.prototype.getName = function() {
        console.log(3);
    }
    
    var getName = function() {
        console.log(4);
    }
    
    function getName() {
        console.log(5);
    }
    
    Foo.getName();
    getName();
    Foo().getName();
    getName();
    new Foo.getName();
    new Foo().getName();
    new new Foo().getName();
    
    

    版本2

     function Foo() {
            this.getName = function () {
                console.log(3);
                return {
                    getName: getName //这个就是第六问中涉及的构造函数的返回值问题
                }
            }; //这个就是第六问中涉及到的,JS构造函数公有方法和原型链方法的优先级
            getName = function () {
                console.log(1);
            };
            return this
        }
        Foo.getName = function () {
            console.log(2);
        };
        Foo.prototype.getName = function () {
            console.log(6);
        };
        var getName = function () {
            console.log(4);
        };
    
         function getName() {
             console.log(5);
         }
         //答案:
        Foo.getName(); 
        getName();// 4
        console.log(Foo())  
        Foo().getName();
        getName();
        new Foo.getName(); 
        new Foo().getName();
        console.log((new Foo()).getName) 
        //多了一问
        new Foo().getName().getName(); 
        new new Foo().getName();
    
    1. .的优先级是18,new Foo优先级是17,new Foo()优先级也是18,函数调用是17

    相关文章

      网友评论

          本文标题:ali面试题

          本文链接:https://www.haomeiwen.com/subject/crhauhtx.html