當(dāng)前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
TypeScript输入参数的默认值一例,以及对应生成的JavaScript代码分析
生活随笔
收集整理的這篇文章主要介紹了
TypeScript输入参数的默认值一例,以及对应生成的JavaScript代码分析
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
const fun = ({ aa = 1, bb = 0 } = {}) => {console.log('aa: ' + aa);console.log('bb: ' + bb);return 'hello';}document.body.innerHTML = fun();
使用tsc進(jìn)行編譯:
生成的JavaScript代碼:
var fun = function (_a) {var _b = _a === void 0 ? {} : _a, _c = _b.aa, aa = _c === void 0 ? 1 : _c, _d = _b.bb, bb = _d === void 0 ? 0 : _d;console.log('aa: ' + aa);console.log('bb: ' + bb);return 'hello'; }; document.body.innerHTML = fun();可讀性一般,Jerry加了一些注釋:
var fun = function (_a) {// 輸入?yún)?shù)_a是否為undefined?如果是,賦上默認(rèn)值{}, 一個(gè)空對象。如果不為空,// 用臨時(shí)變量_b 存儲(chǔ)輸入變量_a的值// 現(xiàn)在_b和_a等價(jià)。var _b = _a === void 0 ? {} : _a;// _c存儲(chǔ)輸入變量的aa字段var _c = _b.aa;// 輸入變量的aa字段為undefined嗎?如果是,則將默認(rèn)值1賦給臨時(shí)變量aa, 否則使用變量傳進(jìn)來的aa字段的值var aa = _c === void 0 ? 1 : _c;// _d存儲(chǔ)輸入變量的bb字段var _d = _b.bb;// 輸入字段的bb為undefined嗎?如果是,使用默認(rèn)值0,否則,使用輸入變量的bb字段的實(shí)際值var bb = _d === void 0 ? 0 : _d;console.log('aa: ' + aa);console.log('bb: ' + bb);return 'hello'; }; document.body.innerHTML = fun();總結(jié)
以上是生活随笔為你收集整理的TypeScript输入参数的默认值一例,以及对应生成的JavaScript代码分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [转]FLASH与ASP通信入门教程
- 下一篇: TypeScript里的高阶函数-返回函