Node.js - 断言
2023-09-11 14:14:38 时间
什么是断言? 程序中的断言是什么意思,让我们带着疑问一步步探索
断言即我们相信程序某个特定点布尔表达式为真
举个例子就是:
我相信你是对的,然后让别人判断一下你是对的或错的,最后我得到结果。
好了,进入正题
assert - 断言(后面的参数我就不一一介绍了,直接上code)
1 assert(value[, message]) 2 assert(value,meesage) 3 //上述两种格式是一样的,程序中的‘[]’代表可选部分,‘<>’代表必选部分。 4 5 assert.deepEqual(actual, expected[, message])
6 assert.deepStrictEqual(actual, expected[, message])
7 assert.doesNotThrow(block[, error][, message])
8 assert.equal(actual, expected[, message])
9 assert.fail(message)
10 assert.fail(actual, expected[, message[, operator[, stackStartFunction]]])
11 assert.ifError(value)
12 assert.notDeepEqual(actual, expected[, message])
13 assert.notDeepStrictEqual(actual, expected[, message])
14 assert.notEqual(actual, expected[, message])
15 assert.notStrictEqual(actual, expected[, message])
16 assert.ok(value[, message])
17 assert.strictEqual(actual, expected[, message])
18 assert.throws(block[, error][, message])
assert(value[, message])
const assert = require('assert'); assert(true, console.log('***打印出信息了'));
assert.deepEqual(actual, expected[, message])
只测试可枚举的自身属性,不测试对象的原型、连接符、或不可枚举的属性(这些情况使用 assert.deepStrictEqual()
)。 例如,下面的例子不会抛出 AssertionError
,因为 RegExp
对象的属性不是可枚举的:
原型:原本的类型
连接符:"+"
可枚举的自身属性:
console.log(Object.keys(var_name))
//输出的可枚举的自身属性
不可枚举的属性:可枚举和不可枚举类型的比较点就是:能否被for..in遍历到
var num = new Number(); for (var pro in num) {
console.log("num." + pro + " = " + num[pro]); }
//forTest.js
//不可枚举的js基本类型,返回null var num = new Number(); for (var pro in num) { console.log("num." + pro + " = " + num[pro]); } function Person() { this.name = "KXY"; } Person.prototype = { constructor: Person, job: "student", }; var kxy = new Person(); Object.defineProperty(kxy, "sex", { value: "female", enumerable: false }); // 不可枚举的sex,其主要原因在于enumerable(true即可枚举) for (var pro in kxy) { console.log("kxy." + pro + " = " + kxy[pro]); } // 可枚举的自身属性 console.log(Object.keys(kxy));
相关文章
- [转] node升级到8.0.0在vscode启动js执行文件报错
- 在vs2017中创建Node.js项目
- Node.js进阶:5分钟入门非对称加密方法
- vue.js+koa2项目实战(五)axios 及 vue2.0 子组件和父组件之间的传值
- [转]如何判断js中的数据类型
- node.js createServer
- Node.js http Server
- Node.js(一)——什么是node?node和浏览器的区别?node能干什么?
- JS可以做什么,它的能力范围 View----------Request/Submit------------------Server
- Node.js的环境配置【详细】
- (14)打鸡儿教你Vue.js
- js图片时间翻转
- 【HarmonyOS】【JS】鸿蒙Js camera怎么拍照并使用image显示出来
- Node.js创建自签名的HTTPS服务器
- js遍历删除数组中不符合条件的元素
- JS 把数组按倒序排列
- npm和Node.js简介
- vue.js格式使用vant-页面引入2
- 《Node.js区块链开发》——第一部分 了解区块链 第1章 加密货币就是货币 1.1 加密货币简史
- 《Node.js区块链开发》——2.4 应用场景
- jquery.dad.js实现table的垂直拖拽(并取到当前拖拽对象)
- 10个常见的Node.js面试题
- [js高手之路]Node.js+jade+express+mongodb+mongoose+promise实现todolist
- JS魔法堂:那些困扰你的DOM集合类型
- 当Node.js遇见Docker
- 【HarmonyOS】【JS】 鸿蒙js开发使用div自带的scroll,滑动条拉不到最下面?
- log4js-Node.js中的日志管理模块使用与封装
- 超酷的实时颜色数据跟踪javascript类库 - Tracking.js
- Dojo第一节:学会使用firebug对js,Dojo进行调适
- Cookie的使用(js-cookie插件)
- vue.js 常用组件库
- Three.js Example 注解 —— canvas_camera_orthographic2.html
- Node.js console
- Node.js crypto模块