一、util.js是什么?
1、util.js是Node.js提供的一个工具库,主要用于辅助实现JavaScript代码的通用功能。 2、除了Node.js中内置的模块外,util.js是Node.js中最核心的模块之一。 3、通过util.js,开发者可以轻松实现JavaScript常用功能,如继承、事件发射、类型判断和错误处理等。
二、util.js的常用方法
1、util.inherits()
1、描述:实现JavaScript中的继承,将一个构造函数的原型对象继承另一个构造函数的原型对象。 2、用法:
var util = require('util');
1、util.inherits(subConstructor, superConstructor);
2、subConstructor.prototype = Object.create(superConstructor.prototype);
3、示例:
var util = require('util');
var EventEmitter = require('events').EventEmitter;
function Person(name) {
this.name = name;
}
util.inherits(Person, EventEmitter);
var jack = new Person('Jack');
jack.on('sayHello', function() {
console.log('Hello, I am ' + this.name);
});
jack.emit('sayHello');
2、util.isArray()
1、描述:判断一个变量是否为数组。 2、用法:
var util = require('util');
util.isArray(obj);
3、示例:
var util = require('util');
console.log(util.isArray([1])); // true
console.log(util.isArray(new Array(1))); // true
console.log(util.isArray({})); // false
3、util.isUndefined()
1、描述:判断一个变量是否未定义。 2、用法:
var util = require('util');
util.isUndefined(obj);
3、示例:
var util = require('util');
console.log(util.isUndefined(undefined)); // true
console.log(util.isUndefined(null)); // false
三、util.js的高级用法
1、util.promisify()
1、描述:将一个基于回调的异步函数转换成一个返回Promise的异步函数。 2、用法:
var util = require('util');
util.promisify(original);
3、示例:
var fs = require('fs');
var util = require('util');
var readFile = util.promisify(fs.readFile);
readFile('test.txt').then(function(data) {
console.log(data.toString());
}).catch(function(err) {
console.error(err);
})
2、util.inspect()
1、描述:将一个JavaScript对象转换成字符串。 2、用法:
var util = require('util');
util.inspect(object, options);
3、示例:
var util = require('util');
console.log(util.inspect(process, { colors: true }));
以上是util.js的常用方法和高级用法,掌握这些方法将极大提升JavaScript开发的效率。