NodeJS - API 사용 내 장 된 모듈

9042 단어
경로1、 normalize path. normalize () 방법 은 주어진 path 를 규범화 시 키 고 '..' 과 '..' 세 션 2, join path. join () 방법 을 해석 합 니 다. 플랫폼 의 특정한 구분자 로 주어진 path 세 션 을 연결 하고 생 성 된 경로 3, resolve path. resolve () 를 규범화 합 니 다.방법 은 하나의 경로 나 경로 세 션 의 순 서 를 절대 경로 로 해석 합 니 다.4. basename 파일 명 5, extname 확장자 6, dirname 는 에 해당 합 니 다.dirname 7、 parse
path.parse()         ,        path    
dir <string>       
root <string>       
base <string>     +   
name <string>       
ext <string>        

8. format path. format () 방법 은 한 대상 에서 경로 문자열 을 되 돌려 줍 니 다.path. parse () 와 반대 입 니 다.
코드 예제:
const {normalize, join, resolve, basename, extname, dirname, parse, format} = require("path")
// console.log(path)
console.log()
// path.normalize()           path,    '..'   '.'   
normalize("/a/b/c../d")
console.log(normalize("/a/b/c/../d"))
// path.join()                    path        ,         
join("/a/b", "../c/d/../e")
console.log(join("/a/b", "../c/d/../e"))
// path.resolve()                          。
resolve("./")
console.log(resolve("./"))
//    
basename("a/b/c/d/e.js")
console.log(basename("a/b/c/d/e.js"))
//    
extname("a/b/c/d/e.js")
console.log(extname("a/b/c/d/e.js"))
//    __dirname
dirname("a/b/c/d/e.js")
console.log(dirname("a/b/c/d/e.js"))
/*
* path.parse()         ,        path    
    dir        
    root        
    base      +   
    name        
    ext         

* */
parse("a/b/c/d/e.js")
console.log(parse("a/b/c/d/e.js"))
// path.format()                  。   path.parse()   。
format({ root: '', dir: 'a/b/c/d', base: 'e.js', ext: '.js', name: 'e' })
console.log(normalize(format({ root: '', dir: 'a/b/c/d', base: 'e.js', ext: '.js', name: 'e' })))

2. 이벤트 - NodeJS 이벤트 메커니즘
1. 기본 소개
대부분의 Node. js 핵심 API 는 일반적인 비동기 이벤트 구동 구 조 를 사용 하 는데 그 중에서 일부 유형의 대상 (트리거) 은 주기 적 으로 명명 사건 을 촉발 하여 함수 대상 (모니터) 을 호출 합 니 다.예 를 들 어 net. server 대상 은 새로운 연결 이 있 을 때마다 이 벤트 를 촉발 합 니 다.fs. ReadStream 은 파일 이 열 릴 때 이 벤트 를 촉발 합 니 다.스 트림 대상 은 데 이 터 를 읽 을 수 있 을 때 이 벤트 를 촉발 합 니 다.사건 을 촉발 할 수 있 는 모든 대상 은 EventEmitter 류 의 인 스 턴 스 입 니 다.이 대상 들 은 이벤트 Emitter. on () 함 수 를 열 었 습 니 다. 대상 이 촉발 할 이름 이벤트 에 하나 이상 의 함 수 를 연결 할 수 있 습 니 다.이벤트 이름 은 보통 낙타 봉 식 문자열 이지 만, 유효한 자 바스 크 립 트 속성 이름 도 사용 할 수 있 습 니 다.EventEmitter 대상 이 이 벤트 를 촉발 할 때 이 이벤트 에 연 결 된 모든 함수 가 동기 화 됩 니 다.모니터 의 반환 값 이 버 려 집 니 다.
2 、 귀속 이벤트
const EventEmitter = require('events');
class MyEmitter extends EventEmitter {}
const myEmitter = new MyEmitter();
myEmitter.on('event', () => {   // once
  console.log('       !');
});
myEmitter.emit('event');

3. 사건 해제
myEmitter. removeListener(“   ”,     )
myEmitter. removeAllListeners(“   ”)

코드 예제:
const EventEmitter =require("events")
// const EventEmitter = require('events');
console.log(EventEmitter)

//     
class MyEmitter extends EventEmitter {}
const myEmitter = new MyEmitter();
myEmitter.on('event', () => {   // once
    console.log('       !');
});
myEmitter.on('event1', () => {   // once
    console.log('   event1  !');
});
myEmitter.once('event', () => {   // once
    console.log('             !');
});
setInterval(()=>{
    myEmitter.emit('event');
    myEmitter.emit('event1');
},1000)


//     
// myEmitter. removeListener(“   ”,     )
// myEmitter. removeAllListeners(“   ”)
setTimeout(()=>{
    myEmitter.removeAllListeners("event")
    myEmitter.removeListener("event1",() => {   // once
        console.log('   event1  !');
    })
},5000)

setTimeout(()=>{
    myEmitter.removeListener("event1",() => {   // once
        console.log('   event1  !');
    })
},9000)

좋은 웹페이지 즐겨찾기