zoukankan      html  css  js  c++  java
  • 前端面试题整理——关于堆栈内存和闭包作用域的题

    // 一个对象里面,属性名不能重复,属性名一般是字符串,数字属性名==字符串属性名
    
        /*
        let a={},b='0',c=0;
        a[b]='abc';
        a[c]='123'
        console.log(a[b])
        */
        //考点进一步深入提问:对象和数组的区别
    
    /*
        let a={},b=Symbol('1'),c=Symbol('2');
        a[b]='abc';
        a[c]='123';
        console.log(a[b])
    */
        //考点进一步深入提问:自己实现Symbol
    
    /*
        let a={},b={n:'1'},c={m:'2'};
        a[b]='abc';
        a[c]='123';
        console.log(a[b])
    */
        //考点进一步深入提问:Object.prototype.toString()和valueOf的区别

    下面代码打印值:

        var test = (function(i){
            return function(){
                alert(i*=2)
            }
        })(2)
        test(5)

    下面代码打印值:

        // a++,先a先跟别人运算,然后再累加1
        // ++a,先a自身累加1,然后再跟别人运算
        var a = 0, b = 0;
        // alert(a++)
    
        function A(a) {
            A = function (b) {
                alert(a + b++);
            }
            alert(a++)
        }
        A(1);
        A(2);

    下面代码打印值:

        var x = 2;
        var y = {
            x: 3,
            z: (function (x) {
                this.x *= x;
                x += 2;
                return function (n) {
                    this.x *= n;
                    x += 3;
                    console.log(x)
                }
            })(x)
        }
        var m = y.z
        m(4);
        y.z(5);
        console.log(x, y.x);
    放弃安逸,持续努力——成长
  • 相关阅读:
    工作中问题的总结1
    linux问题故障
    时间转换
    Tips
    总结
    方向
    同步&异步-阻塞&非阻塞
    IO 之 mark()、reset()
    GC日志分析
    JDK 部分工具使用方法
  • 原文地址:https://www.cnblogs.com/MarsPGY/p/13460137.html
Copyright © 2011-2022 走看看