// js内置对象类型
// ecma
let num:Number = new Number(1)
let data:Date = new Date()
let err:Error = new Error('错误')
let reg:RegExp = new RegExp(/\w/)
let xml:XMLHttpRequest = new XMLHttpRequest()
// dom有三种 HTML(元素)Element、HTMLElement、Element
// 因为querySelector有可能有返回null,所以需要断言,或者关闭严格模式
let div:HTMLDivElement = document.querySelector('div') as HTMLDivElement
// 没特色的标签归到HTMLElement:例如session、header、footer
let session:HTMLElement = document.querySelector('session') as HTMLElement
// 获取元素集合
// 第一种写法
let eleAll:NodeList = document.querySelectorAll('div session')
// 第二种写法:不确定是什么类型
let eleAll2:NodeListOf<HTMLDivElement | HTMLElement> = document.querySelectorAll('div seesion')
// bom
let stroge:Storage = localStorage
let location1:Location = location
// cookie是字符串,所以没有特殊类型
let cookie:string = document.cookie
// Promise需要指定返回的类型,否则报错
let promise:Promise<string> = new Promise((r) => r('123'))