• 两次console.log打印值不同


     1         var a=[1,2,3]
     2         console.log(a);
     3         a[2]=10;
     4         console.log(a);
     5         // 打印结果
     6         // (3) [1, 2, 3]
     7         // (3) [1, 2, 10]
     8 
     9         // 点击小箭头展开
    10         // (3) [1, 2, 3]
    11         // 0: 1
    12         // 1: 2
    13         // 2: 10
    14         // length: 3
    15         // __proto__: Array(0)
    16 
    17         // (3) [1, 2, 10]
    18         // 0: 1
    19         // 1: 2
    20         // 2: 10
    21         // length: 
    22         // 3__proto__: Array(0)

    因为当你在Chrome Console点击展开数组时,会重新去读一遍内存真实的值然后显示,一但展开后就不会再变。

    chrome的console打印对象的时候,查看值是点击展开时再详细获取的,整个流程:

    1. 空对象声明

    2. 执行console,chrome打印对象,传递的是对象的引用

    3. FileReader完成,赋值data给对象

    4. 你在console中,点击展开值,通过对象引用,获取到对象的详细值

    你可以看到截图Object {} [i]这里有个[i]的图标,有对应的对象console说明:value below was evaluated just now

    console的其他用法

    1.console.log占位符

    console.log("%d年%d月%d日",2011,3,26);

    打印结果为2011年3月26日

    2.console.group 信息分组

        //组之间嵌套 group1包含group2
        console.group('group1')
        console.log('member1')
        console.log('member2')  
        console.group('group2')
        console.log('member3')
        console.log('member4')
        
        //添加end 组1与组2并列
        console.group("第一组信息");        
        console.log('member1')
        console.log('member2')
        console.groupEnd();
        console.group("第二组信息");
        console.log('member3')
        console.log('member4')
        console.groupEnd();

    3.console.dir()显示一个对象所有的属性和方法。

  • 相关阅读:
    放射渐变RadialGradient
    return columns.All(new Func<string, bool>(list.Contains));
    AspnetIdentitySample
    Request.GetOwinContext()打不到
    EntityFramework系列:SQLite.CodeFirst自动生成数据库
    EF 索引
    Using Friendly URLs in ASP.NET Web Forms
    OWIN support for the Web API 2 and MVC 5 integrations in Autofac
    owin
    owin中间件
  • 原文地址:https://www.cnblogs.com/zjx304/p/9783339.html
Copyright © 2020-2023  润新知