V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
jmyz0455
V2EX  ›  JavaScript

关于 Javascript 里 console 使用技巧的问题。

  •  
  •   jmyz0455 · 2017-04-28 10:33:09 +08:00 · 2280 次点击
    这是一个创建于 2770 天前的主题,其中的信息可能已经有所发展或是发生改变。
    1. 如果使用 console.log 在控制台里输出 Object 类型的数据,总是呈现一种折叠的状态。请问有没有办法能使控制输出的时候是不折叠的?(全展开)
    2. 如果输出的是 Object 类型的数据,使用 console.log("%c%o", "color: red;", {}); 是无法输出带样式的数据,大家可以试一下,貌似折叠状态下的输出都是无法使用样式的,请问能不能尝试在折叠状态下输出带样式的数据?
    3. 有些 Object 类型的数据,输出的时候,第一行显示的不仅是 Object 字样,还会在后面有缩略的信息,比如 Object {a:"a", b:"b" ... } 这样的,因为我无法重现这种情况,所以可能描述得不准确。请问是怎么做到了?

    其实我有时候实时调试,很需要直接在控制台看到一些键值对,比如像 {a:"a", b:"b", c:"c"} 的内容,而不是需要我一个个点开来看。所以有这么一个需求,大家有更好的方案吗?

    9 条回复    2017-05-08 22:47:21 +08:00
    momocraft
        1
    momocraft  
       2017-04-28 10:47:05 +08:00
    你描述的行为都是 (特定) 浏览器的开发工具干的

    如果开发工具及其扩展不提供你要的选项, 也许可以 console.log(JSON.stringify( ))
    yangg
        2
    yangg  
       2017-04-28 10:58:53 +08:00   ❤️ 1
    console.log(JSON.stringify(obj, null, 2))
    第 3 个参数,指定 2 空格
    1010011010
        3
    1010011010  
       2017-04-28 11:50:11 +08:00   ❤️ 1
    对象能看到啊


    如果是数组,用 console.table
    sunjourney
        4
    sunjourney  
       2017-04-28 11:57:07 +08:00
    @1010011010 #3
    console.table 不错,可以这样用 `console.table(Object.entries(obj))`
    sensui7
        5
    sensui7  
       2017-04-28 11:58:09 +08:00
    console.table 数组, 对象都可用
    zhuangtongfa
        6
    zhuangtongfa  
       2017-04-29 23:12:13 +08:00
    JSON.stringify({title:"test title",content:"test content"},null,2)
    jmyz0455
        7
    jmyz0455  
    OP
       2017-05-02 16:21:07 +08:00
    @1010011010 有时候不行,不知道为何。不过找了很久,发现这种情况下不行:
    console.log("%s", {a:"a", b:"b", c:"c", d:{1:"1", 2:"2", 3:"3"}});
    你可以看看。
    1010011010
        8
    1010011010  
       2017-05-02 16:58:16 +08:00
    干嘛要带格式啊,要输出字符串转 json 先啦

    [Console 文档]( https://developer.mozilla.org/zh-CN/docs/Web/API/Console)
    jmyz0455
        9
    jmyz0455  
    OP
       2017-05-08 22:47:21 +08:00
    @1010011010 带格式只是为了在一堆别人的 console 里看出自己独有样式的 console
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1034 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 20:40 · PVG 04:40 · LAX 12:40 · JFK 15:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.