util 学习
1 const I = 3.4893589; 2 console.log(Number.parseInt(I)); 3 console.log(Number.parseFloat(I)); 4 console.log(Number.isInteger(I));//是否为整数 5 console.log(Math.trunc(I)); //去除一个数的小数部分 6 //Math.sign方法用来判断一个数到底是正数、负数、还是零。 7 var val = Math.sign(I); 8 switch (val){ 9 case -1: 10 console.log("负数"); 11 break; 12 case 1: 13 console.log("正数"); 14 break; 15 case 0: 16 console.log("零"); 17 } 18 console.log(process.versions);
//util 是一个 Node.js 核心模块,提供常用函数的集合, // 用于弥补核心 JavaScript 的功能过于精简的不足 var util = require("util"); //util.inherits //util.inherits(constructor, superConstructor)是一个实现对象间原型继承的函数 function Base(){ this.name = 'base'; this.age = 23; this.sayHi = function(){ console.log("hello " + this.name); } } Base.prototype.getName = function(){ console.log(this.name); }; function Sub(){ this.name = "Sub"; } //继承【sub继承base,只继承base的prototype部分】 //Sub 仅仅继承了 Base 在原型中定义的函数,而构造函数内部创造的 base 属性和 sayHi 函数都没有被 Sub 继承 util.inherits(Sub, Base); var baseObj = new Base(); baseObj.sayHi(); baseObj.getName(); console.log(baseObj); console.log("sub start !!"); var subObj = new Sub(); //subObj.sayHi(); subObj.getName(); console.log(subObj.name); console.log(subObj.age); //undefined console.log(subObj); //util.inspect //util.inspect(object,[showHidden],[depth],[colors])是一个将任意对象转换为字符串的方法, // 通常用于调试和错误输出。 它至少接受一个参数 object, 即要转换的对象。 //showHidden 是一个可选参数,如果值为 true,将会输出更多隐藏信息 //depth 表示最大递归的层数,如果对象很复杂,你可以指定层数以控制输出信息的多少。
如果不指定depth,默认会递归2层【指定为 null 表示将不限递归层数完整遍历对象】 //colors:输出格式将会以 ANSI 颜色编码,通常用于在终端显示更漂亮的效果。 console.log(util.inspect(baseObj)); console.log(util.inspect(baseObj, true)); //输出更多隐藏信息