> 웹 프론트엔드 > JS 튜토리얼 > Node.js 도구 모듈

Node.js 도구 모듈

黄舟
풀어 주다: 2017-01-17 16:10:58
원래의
1338명이 탐색했습니다.

학습 포인트

Node.js OS 시스템 동작 기능

Node.js 경로 처리 파일

Node.js Net 네트워크 통신

Node. Node.js DNS 도메인 이름 확인

Node.js 도메인(domain)

Node.js 도구 모듈

Node.js OS 시스템 작동 기능

사례: os .js

[code]var os = require('os');
// 返回操作系统的默认临时文件夹
console.log(os.tmpdir());
// 返回CPU的字节序
console.log(os.endianness());
// 返回 OS 的主机名
console.log(os.hostname());
// 返回 OS 名
console.log(os.type());
// 返回 OS 名称
console.log(os.platform());
// 返回 OS CPU 架构
console.log(os.arch());
// 返回 OS 的发行版本
console.log(os.release());
// 返回 OS 运行的时间,以秒为单位
console.log(os.uptime());
// 返回一个包含1、5、15分钟平均负载的数组
console.log(os.loadavg());
// 返回 OS 空闲内存量,单位是字节
console.log(os.freemem());
// 返回一个对象数组,包含所安装的每个 CPU内核的信息:
// 型号、速度、时间
console.log(os.cpus());
// 获得网络接口列表
console.log(os.networkInterfaces());
로그인 후 복사

Node.js 도구 모듈

Node.js 경로 처리 파일

사례: path.js

[code]var path = require('path');
// 规范化路径,注意'..' 和 '.'
console.log('normalization : ' + path.normalize('/test/test1//2slashes/1slash/tab/..'));
// 连接路径
console.log('joint path : ' + path.join('/test', 'test1', '2slashes/1slash', 'tab', '..'));
// 转换为绝对路劲
console.log('resolve : ' + path.resolve('path.js'));
// 路径中文件的后缀名
console.log('ext name : ' + path.extname('path.js'));
로그인 후 복사


Node.js 도구 모듈

Node.js Net 네트워크 통신

사례: 브라우저가 작동하지 않음

net.js

[code]var net = require('net');
var server = net.createServer(function (connection) {
    console.log('client connected');
    connection.on('end', function () {
        console.log('客户端关闭连接');
    });
    connection.write('Hello World!\r\n');
    connection.pipe(connection);
});
server.listen(8888, function () {
    console.log('server is listening');
});
로그인 후 복사

Node.js 도구 모듈

Node.js DNS 도메인 이름 확인

사례: dns.js

[code]var dns = require('dns');
dns.lookup('www.lamport.me', function onLookup (err, address, family) {
    console.log('ip 地址:', address);
    dns.reverse(address, function (err, hostnames) {
        if (err) console.log(err.stack);
        console.log('反向解析' + address + ': ' + JSON.stringify(hostnames));
    })
})
로그인 후 복사

Node.js 도구 모듈

Node.js 도메인(domain)

비동기 코드에서 예외 처리를 단순화하고, try catch로 잡을 수 없는 예외를 catch하고 처리할 수 있습니다.

사례: domain.js

[code]var EventEmitter = require("events").EventEmitter;
var domain = require("domain");
var emitter1 = new EventEmitter();
// 创建域
var domain1 = domain.create();
domain1.on('error', function(err){
   console.log("domain1 处理这个错误 ("+err.message+")");
});
// 显式绑定
domain1.add(emitter1);
emitter1.on('error',function(err){
   console.log("监听器处理此错误 ("+err.message+")");
});
emitter1.emit('error',new Error('通过监听器来处理'));
emitter1.removeAllListeners('error');
emitter1.emit('error',new Error('通过 domain1 处理'));
var domain2 = domain.create();
domain2.on('error', function(err){
   console.log("domain2 处理这个错误 ("+err.message+")");
});
// 隐式绑定
domain2.run(function(){
   var emitter2 = new EventEmitter();
   emitter2.emit('error',new Error('通过 domain2 处理'));   
});
로그인 후 복사

Node.js 도구 모듈

위는 Node.js 도구 모듈의 내용입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!


관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿