摘要:先推薦一個我自己寫的模板引擎,項目地址。下面就是總結的編寫模板引擎的幾個步驟例如一個模板為最終會編譯成為一個函數可以觀察到模板中的所有的變量名都被指定成了參數對象的屬性,并且該函數自始至終只做了一件事,就是構建字符串,并將其返回。 showImg(https://segmentfault.com/img/remote/1460000007498588?w=300&h=113); 先推薦...
摘要:上述代碼采用了依賴注入的方式注入了五個服務,分別用于實現依賴注入的注入器,代碼解析器,控制器服務根作用域服務和指令解析服務。緊接著,執行函數,執行指令相關操作,并返回處理后的鏈接函數。 @(Angular) $compile,在Angular中即編譯服務,它涉及到Angular應用的編譯和鏈接兩個階段,根據從DOM樹遍歷Angular的根節點(ng-app)和已構造完畢的 $rootS...
摘要:常常在開發中,會使用到很多數組和字符串的處理方法,這里列舉一些我常用到的一些,方便大家參考使用。數組轉化成字符串,原來的數組不變。將作為切割字符,結果存在一個字符串中。補充數字保留小數,結果是字符串類型的。 常常在開發中,會使用到很多js數組和字符串的處理方法,這里列舉一些我常用到的一些,方便大家參考使用。 數組方面 push:向數組尾部增加內容,返回的是新數組的長度。 var arr...
摘要:實現阻塞隊列在自己實現之前先搞清楚阻塞隊列的幾個特點基本隊列特性先進先出。消費隊列空時會阻塞直到寫入線程寫入了隊列數據后喚醒消費線程。 實現Java 阻塞隊列 在自己實現之前先搞清楚阻塞隊列的幾個特點:基本隊列特性:先進先出。寫入隊列空間不可用時會阻塞。獲取隊列數據時當隊列為空時將阻塞。 實現隊列的方式多種,總的來說就是數組和鏈表;其實我們只需要搞清楚其中一個即可,不同的特性主要表現為...
摘要:作用通過版本號解決的問題。示例當前值,預設當前版本號結果當前值,預設當前版本號結果當前值當前版本號運行結果如下這里用休眠,讓線程和線程一次執行,通過結果可以看出來,線程執行成功,而線程執行失敗。 作用 通過版本號解決ABA的問題。 示例 public class AtomicStampedReferenceDemo { static AtomicStampedReference...