assert.ok(value[, message])
测试 value
是否为真。
相当于 assert.equal(!!value, true, message)
。
如果 value
不是真值,则抛出 AssertionError
,其 message
属性设置为等于 message
参数的值。
如果 message
参数为 undefined
,则分配默认错误消息。
如果 message
参数是 Error
的实例,则将抛出错误而不是 AssertionError
。
如果根本没有传入任何参数,则 message
将设置为字符串:'No value argument passed to `assert.ok()`'
。
请注意,在 repl
中,错误消息将与文件中抛出的错误消息不同!
有关更多详细信息,请参见下文。
const assert = require('assert').strict;
assert.ok(true);
// OK
assert.ok(1);
// OK
assert.ok();
// AssertionError: No value argument passed to `assert.ok()`
assert.ok(false, 'it\'s false');
// AssertionError: it's false
// 在交互式解释器中:
assert.ok(typeof 123 === 'string');
// AssertionError: false == true
// 在文件中(例如 test.js):
assert.ok(typeof 123 === 'string');
// AssertionError: The expression evaluated to a falsy value:
//
// assert.ok(typeof 123 === 'string')
assert.ok(false);
// AssertionError: The expression evaluated to a falsy value:
//
// assert.ok(false)
assert.ok(0);
// AssertionError: The expression evaluated to a falsy value:
//
// assert.ok(0)
// 使用 `assert()` 的工作一样:
assert(0);
// AssertionError: The expression evaluated to a falsy value:
//
// assert(0)
Tests if value
is truthy. It is equivalent to
assert.equal(!!value, true, message)
.
If value
is not truthy, an AssertionError
is thrown with a message
property set equal to the value of the message
parameter. If the message
parameter is undefined
, a default error message is assigned. If the message
parameter is an instance of an Error
then it will be thrown instead of the
AssertionError
.
If no arguments are passed in at all message
will be set to the string:
'No value argument passed to `assert.ok()`'
.
Be aware that in the repl
the error message will be different to the one
thrown in a file! See below for further details.
const assert = require('assert').strict;
assert.ok(true);
// OK
assert.ok(1);
// OK
assert.ok();
// AssertionError: No value argument passed to `assert.ok()`
assert.ok(false, 'it\'s false');
// AssertionError: it's false
// In the repl:
assert.ok(typeof 123 === 'string');
// AssertionError: false == true
// In a file (e.g. test.js):
assert.ok(typeof 123 === 'string');
// AssertionError: The expression evaluated to a falsy value:
//
// assert.ok(typeof 123 === 'string')
assert.ok(false);
// AssertionError: The expression evaluated to a falsy value:
//
// assert.ok(false)
assert.ok(0);
// AssertionError: The expression evaluated to a falsy value:
//
// assert.ok(0)
// Using `assert()` works the same:
assert(0);
// AssertionError: The expression evaluated to a falsy value:
//
// assert(0)