20191009 前端開發日報

Vue 使用中需要注意回避的地方;JavaScript類型轉換的有趣應用;前端面試每日 3+1 —— 第174天;2019.10 / JavaScript 月刊 – W3C 生日快樂;javascript 中 AOP 那些事;實踐實現純前端下的音頻剪輯處理;解決webapck多頁面內存溢出;使用 Proxy 實現 Vue.js 3 中的響應式思想

  1. JavaScript類型轉換的有趣應用 背景 可以訪問這個網站提前預覽: https://knightyun.github.io/magic-expression/ 先來看一串代碼: (!(~+ ]* ]+~~!+ +({}+ ]*~+ 也許你在其他地方看見過這種黑科技操作,那么不妨猜一下上面的代碼的值等于多少,實在猜不到可以復制它粘貼到瀏覽器 console 中回車看看; ...
  2. 前端面試每日 3+1 —— 第174天今天的知識點 (2019.10.07) —— 第174天 [html] img、input標簽它們是行內元素還是塊級元素? [css] css3和css2的區別是什么? [js] 你知道斷點續傳的原理嗎?用js怎么實現? [軟技能] 你想當技術總監嗎?你覺得技...
  3. 2019.10 / JavaScript 月刊 - W3C 生日快樂
  4. javascript 中 AOP 那些事 最近在忙著閱讀 megalo 的代碼 (未來會出一個系列專門講 megalo 的源碼,還是挺有意思的,大家可以期待一下)。感覺 megalo 、 mpvue 等小程序的跨端框架也好, weex 跨平臺框架也好,本質都差不多,都是 fork 了一份 vue 過來改了改,借助了 vue 的能力,在平臺具體的 api 上換成了自己的。 其中,有一段代碼...
  5. 實踐實現純前端下的音頻剪輯處理最近在做一個項目,需要對webRTC錄制的音頻進行處理,包括音頻的裁剪、多音頻合并,甚至要將某個音頻的某一部分替換成另一個音頻。
  6. 解決webapck多頁面內存溢出 因為自己的項目是基于 vue-cli3 進行開發,所以這里只討論這種情況下的解決辦法 在進行多頁面開發的時候,項目剛開始階段,因為文件較少,所以代碼編譯速度還行,但是隨著項目逐漸增大, webpack 編譯的速度越來越慢,并且經常出現內存溢出的情況。 下面就是幾種嘗試的方法,加快編譯的速度 增加 Node ...
  7. 使用 Proxy 實現 Vue.js 3 中的響應式思想 我們知道,Vue.js 2 是通過 Object.defineProperty() 函數來實現的響應式。這個月 5 號尤大發布了 Vue.js 3 的源碼,社區馬上出現了很多源碼分享的文章。 大家早就得知新版的響應式是用 Proxy 實現的,現在我們來利用 Proxy 實現一個基本的響應式骨架。 基礎 關于 Proxy 的基礎知識,可以去MDN學習直達鏈接。 ...
  8. 如何編寫高質量的 JS 函數(3) --函數式編程[理論篇]《如何編寫高質量的 JS 函數(1) -- 敲山震虎篇》介紹了函數的執行機制,此篇將會從函數的命名、注釋和魯棒性方面,闡述如何通過 JavaScript 編寫高質量的函數。
  9. webpack常用加載器、插件總結,看這一篇就夠了webpack 是一個現代 JavaScript 應用程序的靜態模塊打包器(module bundler)。當 webpack 處理應用程序時,它會遞歸地構建一個依賴關系圖(dependency graph),其中包含應用程序需要的每個模塊,然后將所有這些模塊...
  10. JavaScript 數組計數排序 計數排序是一個非基于比較的排序算法,它的優勢在于在對一定范圍內的整數排序時,快于任何比較排序算法 計數排序實現圖 目錄 第一版 思路 代碼實現 第二版 思路 代碼實現 第一版 思路 例如我現在有 一組 5 個數的數組需要進行排序 let arr = [2,6,3...
  11. es6-認識Set和Map 在es5中經常用對象來實現集合 set 和映射 map 的數據結構,但是這種方式有一些弊端。比如實現集合時,我們不能用 if(set.count) 判斷某個元素是否確切存在。在集合中,屬性5和'5'會被當作同一個鍵,還有不能使用對象作為鍵,因為會轉為 。所以,es6提供了兩種新的數據解構: Set 集合和 Map 映射...
  12. vue-v-xxx基于 Vue拓展的 v-xxx 庫作為vue輕車熟路的老司機,經常會用到一些指令,vue官方提供的指令又太少,無法滿足旺盛的欲望,而每次要寫一遍,終日郁郁寡歡,從小就教育我們樂于助人,為了將奉獻精神貫徹始終,用了這個庫,空下來大把時間陪...
  13. JavaScript工作原理:V8編譯器的優化 原文鏈接: https://blog.logrocket.com/ho... 原文標題:How JavaScript works: Optimizing the V8 compiler for efficiency 本文首發于公眾號:符合預期的CoyPan 理解JavaScript的工作原理是寫出高效JavaScript代碼的關鍵。 忘記那些無關緊要的毫秒級改進:錯誤地使用對象屬性可能導致簡單的一行代碼...
  14. 初探Cordova結合Vue cordova : 可以把 html css js 寫的代碼打包成 app ,還可以讓 js 調用原生的 api 。 cordova 非常成熟、插件也非常多、擴展性也強,10年的歷史 打包App有幾個方案 ionic reactNative weex flutter cordova+vue cordova+react cordova+angular 二、環境搭建 2.1 用cordova開發android 應用 安裝jdk 、...
  15. Vuex - Module 由于 Vuex 使用 單一狀態樹 , 導致應用的所有狀態都會集中存儲在一個比較大的對象里. 當應用變得非常復雜時, store 對象就有可能變得相當臃腫. 為了解決以上問題, Vuex 允許我們將 store 分割成 模塊( Module ) . 每個模塊擁有自己的 [ state ...
  16. es6-對象和數組解構 我們經常需要在對象和數組內提取相關的數據,往往我們需要遍歷才能完成。而在es6添加了簡化這種任務的新特性:解構。解構是一種打破數據解構,將其拆分成更小部分的過程。 對象解構 基本用法: let node = { type: 'Identifier', name: 'foo' }; let { type, name } = node; console.log(type, name); // Identi...
  17. 詳解 http 報文 總算在節前晚上完成了,祝大家國慶快樂! 摘要 作為一個web開發者,每天都在使用者Http協議,卻總是一知半解。本文參看Http RFC7230規范,梳理了http報文部分。 http 報文構成 start-line: 起始行,描述請求或響應的基本信息 *( header-field CRLF ): 頭 CRLF header ...
  18. es6-生成器Generator 迭代器是es6中一個重要的概念,很多新特性都是基于迭代器概念而鋪開的。為了更加方便的創建自定義的迭代器,es6引入了生成器 (Generator) 的概念。它是一種可以返回迭代器的特殊函數。有了生成器及它的特性可以讓我們創建更加簡潔的異步代碼。 基本概念 通過 function 關鍵字后面的星號 (*) 來表示,函數體用 yiel...

關注github前端日報 訂閱精彩文章

前端日報欄目數據來自碼農頭條,每日分享互聯網上熱門的前端開發、移動開發、設計、資源和資訊等,為開發者提供動力,如果覺得內容對你有用,記得分享給你的小伙伴。進入碼農頭條查看更多