define(function () { var now = +new Date(); var util = {}; util.guid = function () { return "e" + now++; }; util.noop = function () {}; var dontEnumBug = !(({ toString: 1 }).propertyIsEnumerable("toString")); // type 子類 superType 父類 util.inherits = function (type, superType) { var Empty = function () {}; Empty.prototype = superType.prototype; var proto = new Empty(); var originalPrototype = type.prototype; type.prototype = proto; for (var key in originalPrototype) { proto[key] = originalPrototype[key]; } if (dontEnumBug) { // 其實(shí)還有好多其它的,但應(yīng)該不會撞上吧(╯‵□′)╯︵┻━┻ if (originalPrototype.hasOwnProperty("toString")) { proto.toString = originalPrototype.toString; } if (originalPrototype.hasOwnProperty("valueOf")) { proto.valueOf = originalPrototype.valueOf; } } type.prototype.constructor = type; return type; }; util.parseJSON = function (text) { if (!text) { return undefined; } if (window.JSON && typeof JSON.parse === "function") { return JSON.parse(text); } else { /* jshint evil: true */ return new Function("return (" + text + ");")(); } }; var whitespace = /(^[s xa0u3000]+)|([u3000xa0s ]+$)/g; util.trim = function (source) { return source.replace(whitespace, ""); }; return util; });
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/79092.html
摘要:無論你使用的是解釋型語言還是編譯型語言,都有一個(gè)共同的部分將源代碼作為純文本解析為抽象語法樹的數(shù)據(jù)結(jié)構(gòu)。和抽象語法樹相對的是具體語法樹,通常稱作分析樹。這是引入字節(jié)碼緩存的原因。 這是專門探索 JavaScript 及其所構(gòu)建的組件的系列文章的第 14 篇。 想閱讀更多優(yōu)質(zhì)文章請猛戳GitHub博客,一年百來篇優(yōu)質(zhì)文章等著你! 如果你錯(cuò)過了前面的章節(jié),可以在這里找到它們: JavaS...
摘要:事實(shí)是只是部分語言的不同表示法?;谶@些,解析器會進(jìn)行立即或者懶解析。然而,解析器做了完全不相關(guān)的額外無用功即解析函數(shù)。這里不解析函數(shù),該函數(shù)聲明了卻沒有指出其用途。所以之前的例子,解析器實(shí)際上 原文請查閱這里,本文采用知識共享署名 4.0 國際許可協(xié)議共享,BY Troland。 本系列持續(xù)更新中,Github 地址請查閱這里。 這是 JavaScript 工作原理的第十四章。 概...
摘要:事實(shí)是只是部分語言的不同表示法?;谶@些,解析器會進(jìn)行立即或者懶解析。然而,解析器做了完全不相關(guān)的額外無用功即解析函數(shù)。這里不解析函數(shù),該函數(shù)聲明了卻沒有指出其用途。所以之前的例子,解析器實(shí)際上 原文請查閱這里,本文采用知識共享署名 4.0 國際許可協(xié)議共享,BY Troland。 本系列持續(xù)更新中,Github 地址請查閱這里。 這是 JavaScript 工作原理的第十四章。 概...
摘要:事實(shí)是只是部分語言的不同表示法?;谶@些,解析器會進(jìn)行立即或者懶解析。然而,解析器做了完全不相關(guān)的額外無用功即解析函數(shù)。這里不解析函數(shù),該函數(shù)聲明了卻沒有指出其用途。所以之前的例子,解析器實(shí)際上 原文請查閱這里,本文采用知識共享署名 4.0 國際許可協(xié)議共享,BY Troland。 本系列持續(xù)更新中,Github 地址請查閱這里。 這是 JavaScript 工作原理的第十四章。 概...
摘要:能達(dá)到一個(gè)積木塊模塊的要求。接下來我們將改進(jìn)它。結(jié)尾到此,我們自己構(gòu)建了一個(gè)很實(shí)用的模塊化工具,項(xiàng)目的源碼在這里,喜歡的話,給個(gè)。 前言 希望編寫程序能像玩積木一樣,首先規(guī)劃要產(chǎn)出怎樣的作品,然后在積木堆中挑選合適的積木塊,最后一組合就完工了。 于是JavaScript需要類似這樣模塊化,每個(gè)模塊都隱藏內(nèi)部細(xì)節(jié)并且對外暴露接口,再處理好模塊之間的依賴關(guān)系,就可以達(dá)到玩積木的效果了。 雖...
閱讀 980·2021-11-24 09:39
閱讀 2737·2021-09-26 09:55
閱讀 14449·2021-08-23 09:47
閱讀 3594·2019-08-30 15:52
閱讀 863·2019-08-29 13:49
閱讀 1016·2019-08-23 18:00
閱讀 859·2019-08-23 16:42
閱讀 1655·2019-08-23 14:28