脚本开发

模块 console

该模块提供了在标准输出流 stdout 和错误流 stderr 上写入错误记录和快速调试的功能。它与大多数 Web 浏览器中实现的控制台对象类似。

Functions


assert (expression, msg...)

测试表达式是否为真,如果不是,则引发 AssertionError 异常。它使用 ECMAScript toBoolean() 转换。

Example

>> var x = 10;
>> console.assert(x > 0, 'failed!'); // passes
>> console.assert(x < 0, 'failed!'); // fails
   AssertionError: failed! at <stdin>:12

>> console.assert(false, 'failed!'); // fails
   AssertionError: failed! at <stdin>:13

>> // passes; any Object expression is true
>> console.assert(new Boolean(false), 'failed!');

Parameters

Boolean expression

the expression to test

*... msg...

one or more error messages


dir (obj)

在 stdout 上打印一个对象的所有属性列表。

Example

>> var obj = { foo: "bar", baz: 12345 };
>> console.dir(obj);
{ foo: 'bar', baz: 12345 }
>> console.dir(global);
{ setTimeout: [Function], setInterval: [Function] }

Parameters

Object obj

the object whose properties should be output


error (msg...)

用可视的“错误”表示记录消息,包括调用代码的文件名和行号。打印在 stderr 上。

Example

>> console.error('Hello World!');
[error] Hello World! (<stdin>:1)
>> console.error('A: %s, B: %s, C: %s', 'a', 'b', 'c');
[error] A: a, B: b, C: c (<stdin>:3)
>> console.error('Current nanoseconds: %d', java.lang.System.nanoTime());
[error] Current nanoseconds: 9228448561643 (<stdin>:5)

Parameters

*... msg...

one or more message arguments


info (msg...)

用可视“信息”表示记录消息,包括调用代码的文件名和行号。在标准输出上打印。

Example

>> console.info('Hello World!');
[info] Hello World! (<stdin>:1)
>> console.info('A: %s, B: %s, C: %s', 'a', 'b', 'c');
[info] A: a, B: b, C: c (<stdin>:3)
>> console.info('Current nanoseconds: %d', java.lang.System.nanoTime());
[info] Current nanoseconds: 9677228481391 (<stdin>:5)

Parameters

*... msg...

one or more message arguments


log (msg...)

在 stdout 上将消息记录到控制台。

日志的第一个参数可能是一个包含类似 printf 的占位符的字符串。否则,multipel 参数将被连接在一起并以空格分隔。

Example

>> console.log('Hello World!');
Hello World!
>> console.log('A: %s, B: %s, C: %s', 'a', 'b', 'c');
A: a, B: b, C: c
>> console.log('Current nanoseconds: %d', java.lang.System.nanoTime());
Current nanoseconds: 9607196939209

Parameters

*... msg...

one or more message arguments


time (name)

以给定的名称创建一个新的计时器。调用具有相同名称的 console.timeEnd(name)来停止计时器并记录已过去的时间。

Example

>> console.time('timer-1');
>> // Wait some time ...
>> console.timeEnd('timer-1');
timer-1: 15769ms

Parameters

String name

the timer name


timeEnd (name)

停止通过调用 console.time(name) 创建的计时器并记录已用时间。

Example

>> console.time('timer-1');
>> // Wait some time ...
>> console.timeEnd('timer-1');
timer-1: 15769ms

Parameters

String name

the timer name


trace (msg...)

在调用 JavaScript 的位置打印 JavaScript 执行的堆栈跟踪。在标准输出上打印。

Parameters

*... msg...

optional message arguments


warn (msg...)

用可视的“警告”表示记录消息,包括调用代码的文件名和行号。打印在 stderr 上。

Example

>> console.warn('Hello World!');
[warn] Hello World! (<stdin>:1)
>> console.warn('A: %s, B: %s, C: %s', 'a', 'b', 'c');
[warn] A: a, B: b, C: c (<stdin>:3)
>> console.warn('Current nanoseconds: %d', java.lang.System.nanoTime());
[warn] Current nanoseconds: 9294672097821 (<stdin>:5)

Parameters

*... msg...

one or more message arguments