---
# System prepended metadata

title: '#6 內建物件'
tags: [TypeScript 新手指南]

---

---
tags: TypeScript 新手指南
---

# #6 內建物件

> 討論日期: 2021/12/28
> 討論範圍: 內建物件


## 筆記分享

https://willh.gitbook.io/typescript-tutorial/basics/built-in-objects


## 待解決問題

### 為何 TypeScript 核心函式庫的定義檔案沒有內建 Node.js

> Reference:
> https://willh.gitbook.io/typescript-tutorial/basics/built-in-objects#yong-typescript-xie-node.js

快速爬了一下 typescript 的 [issue#9466](https://github.com/microsoft/TypeScript/issues/9466)，看起來很早就有人討論這題，這牽扯到幾個議題：
1. Node.js 是否要被視為與 browser 同等的 first class platform?
2. 需要按 Node.js 版號建立 Type Definition 並按版本引用
3. Node.js 版本更新太快導致型別定義檔更新也快，typescript team 維護的 effort 大幅增加
 
最終才決定搬到 [@types/node](https://www.npmjs.com/package/@types/node) 底下分開維護... TypeScript 核心的型別定義只支援 Javascript ECMAScript 標準和 browser 


還是可以根據 Node.js 版本設定 typescript compiler 要支援哪一版本的 Javascript ECMAScript 標準的語法，但這就跟內建 Node.js module type definition (ex: fs, path) 是兩件事了
https://github.com/microsoft/TypeScript/wiki/Node-Target-Mapping

## 線上討論紀錄

### 解釋 BOM/DOM

https://www.happycoding.today/posts/43