Array의 prototype에 함수를 추가하려면 다음과 같이 한다.
d.ts 파일을 다음과 같이 작성한다.
1 2 3 4 5 | declare global { interface Array<T> { deepCopy(): Array<T>; } } | cs |
그리고 ts 파일에 다음과 같이 한다.
1 2 3 4 5 6 7 8 | Array.prototype.deepCopy = function() { let newArray: any[] = []; for(let i = 0; i < this.length; i++) { newArray.push(this[i]); } return newArray; } | cs |
위를 보면 export 구문이 없다. 뭐 위 내용을 export = () => {} 처럼 함수를 export 하고 함수 안에서 위 내용을 호출해도 되지만, export 구문이 없어도 된다.
그리고 index.ts(package.json의 main)에서 require("[js파일 경로]"); 를 해주면 된다.
그럼 전역으로 사용할 수 있다.
댓글 없음:
댓글 쓰기