JavaScript 專題系列第十五篇,講解惰性函數 需求 咱們如今須要寫一個 foo 函數,這個函數返回首次調用時的 Date 對象,注意是首次。 解決一:普通方法 var t; function foo() { if (t) return t; t = new Date()…
javascript
原文發表在: holmeshe.me , 本文是漢化重製版。本系列在 Medium和掘金上同步連載。還記得早先用ajax胡亂作項目的時候踩過好多坑,而後對JS留下了「很是詭異」的印象。最近換了一個工做,工做語言就是JS。而後發現這個語言真不得了,前面後面都能幹,基本成了全棧的同義…
css
placeholder屬性給予了用戶很友好的提示,可是在老版本的瀏覽器中就不會起做用(Internet Explorer 9 及以前的版本不支持 placeholder 屬性),這是一個很頭疼的問題,因而就產生了一些思考。
html
試一下本身擼一個圖片懶加載... 懶加載其實就是延遲加載,是一種對網頁性能優化的方式,好比當訪問一個頁面的時候,優先顯示可視區域的圖片而不一次性加載全部圖片,當須要顯示的時候再發送圖片請求,避免打開網頁時加載過多資源。 當頁面中須要一次性載入不少圖片的時候,每每都是須要用懶加載…
前端
「幾天前我在一個專題討論會講 JavaScript,午餐時候一個學員跑來向我請教一個 JS 難題,而它確實把我給難住了。他保證說這個問題是偶然間遇到的,而我對此表示懷疑,由於這極有多是一道有意而爲之的燒腦題。」
java
面試常常問,你還不看看?
git
JavaScript工做機制:第1部分
程序員
1、 一道面試題 前段時間面試,考察比較多的是js異步編程方面的相關知識點,現在,正好輪到本身分享技術,因此想把js異步編程學習下,作個總結。 下面這個demo 歸納了大多數面試過程當中遇到的問題: for(var i = 0; i < 3; i++) { setTimeout(f…
github
普及:瀏覽器的兼容性問題,每每是個別瀏覽器(沒錯,就是那個不同凡響的瀏覽器)對於一些標準的定義不一致致使的。俗話說:沒有IE就沒有傷害。 貼士:內容都是本身總結的,難免會出現錯誤或者bug,歡迎更正和補充,本帖也會不斷更新。 Normalize.css 不一樣瀏覽器的默認樣式存在差…
面試
前言 在Es6以前,因爲javascript沒有對類的支持,也就是說它並不具有如傳統後臺語言(好比java)擁有類的功能,所謂類就是用來描述事物中的屬性和行爲的,類的特徵是由成員組成的,而屬性對應的就是類中的成員變量,而方法對應的就是類中的成員方法,這是傳統oop語言的描述,然…
ajax
做者:李英傑,美團金融前端團隊成員。歡迎你們一塊兒來探討FP 題外話:只是單純地談談我的對函數式編程的理解,歡迎你們來一塊兒探討。也不會說起高階函數與範疇學的內容,只聊一些很入門的問題。函數式編程的優勢這裏也不作過多說明,會推薦你們看幾篇文章,裏面有很好的闡述。 斜體灰字部分是一些…
在這篇文章裏,我會深刻地探討 JavaScript 中最基本概念之一,那就是執行上下文。經過這篇文章,你應該可以清楚地瞭解到 JS 解釋器究竟在幹嗎,爲何能夠在一些函數和變量聲明以前就能使用,以及它們的值是怎樣被決定的。
在JavaScript開發中有一些有意思的小技巧和方法,本文記錄了一些我工做中遇到的一些技巧和方法。
原文發表在: holmeshe.me , 本文是漢化重製版。 本系列在 Medium上同步連載。 簡單來說,異步有兩層含義,1)讓慢操做不要阻塞;2)非線性觸發事件。稍稍講深一點,在操做系統裏,事件也叫中斷,這裏一次中斷能夠表明一個網絡收包,一次時鐘,或者一次鼠標點擊,等。那從…
當執行 JS 代碼時,會生成執行環境,只要代碼不是寫在函數中的,就是在全局執行環境中,函數中的代碼會產生函數執行環境,只此兩種執行環境。 想必以上的輸出你們確定都已經明白了,這是由於函數和變量提高的緣由。一般提高的解釋是說將聲明的代碼移動到了頂部,這其實沒有什麼錯誤,便於你們理…
1、功能模塊 先看下如今作完的效果: 效果圖 線上體驗:https://wj704.github.io/five_...:1.人機對戰功能2.悔棋功能3.撤銷悔棋功能 2、代碼詳解 2.1 人機對戰功能實現 從效果圖能夠看到,棋盤的橫豎能夠放的位置爲1…
可以讀懂這篇博客的 JavaScript 開發者,運氣不會太差...
點進來你會發現新世界。
原文地址:Functional-Light-JS 原文做者:Kyle Simpson-《You-Dont-Know-JS》做者 關於譯者:這是一個流淌着滬江血液的純粹工程:認真,是 HTML 最堅實的樑柱;分享,是 CSS 裏最閃耀的一瞥;總結,是 JavaScript 中最嚴…
不打算考慮兼容性,因此沒有必要採用UEditor這麼重的插件。爲此決定自研一個富文本編輯器。本文,主要介紹如何實現富文本編輯器,和解決一些不一樣瀏覽器和設備之間的bug。
進入測試階段 ~~~ (利用console.time 和 console.Endtime)看看執行時間.....
這個問題看似很基礎,可是有不少的實現方式,你知道的有多少呢,網上也有不少的方法,下面就來總結一下 中間變量(臨時變量) 使用加減(針對數字) 對象和數組 萬能法(運用運算符優先級) ES6的解構賦值 什麼是解構賦值?
解構賦值容許你使用相似數組或對象字面量的語法將數組和對象的屬…
什麼是響應式?響應式的頁面在不一樣的屏幕有不一樣的佈局,換句話說,使用相同的html在不一樣的分辨率有不一樣的排版。以下圖所示: 響應式佈局是爲了解決適配的問題,傳統的開發方式是PC端開發一套,手機端再開發一套,而使用響應式佈局只要開發一套就行了。由於它是用的一樣html,因此它的JS…
對 video 除了基本的 api 的瞭解,還須要作好對應的兼容性。Chrome 最先在 11年開始了對於 video 的支持,不一樣的瀏覽器當時對於格式支持也是不一樣...
阿里前端筆試題,題目很少,難度也不大,我只記錄了兩道稍微有點難度的編程題。題目以下: 1.JSON.stringify 的功能是,將一個 JavaScript 字面量對象轉化爲一個 JSON 格式的字符串。例如 當要轉化的對象有「環」存在時(子節點屬性賦值了父節點的引用),爲了…
做者:李英傑,美團金融前端團隊成員。歡迎你們一塊兒來探討FP 題外話:只是單純地談談我的對函數式編程的理解,歡迎你們來一塊兒探討。也不會說起高階函數與範疇學的內容,只聊一些很入門的問題。函數式編程的優勢這裏也不作過多說明,會推薦你們看幾篇文章,裏面有很好的闡述。 斜體灰字部分是一些…
有不少種方式能夠將字符串轉爲數字。我能想到的方式就至少有5種!
該使用哪一種方式?何時?爲何?這得分析每一種方式和使用它們時常見的陷阱。
根據 JsPerf.com 上的 benchmarks 一組測試代表,大多數瀏覽器都對 ParseInt 作過優化。雖然它多是最快的一…
原文地址:Functional-Light-JS 原文做者:Kyle Simpson - 《You-Dont-Know-JS》做者 關於譯者:這是一個流淌着滬江血液的純粹工程:認真,是 HTML 最堅實的樑柱;分享,是 CSS 裏最閃耀的一瞥;總結,是 JavaScript 中…
一、瀏覽器的內核是多線程的,它們在內核控制下相互配合以保持同步,一個瀏覽器一般由如下常駐線程組成:GUI 渲染線程,javascript 引擎線程,瀏覽器事件觸發線程,定時觸發器線程,異步 http 請求線程。 GUI 渲染線程:負責渲染瀏覽器界面 HTML 元素,當界面須要重…
JavaScript 運算符規則與隱式類型轉換詳解 從屬於筆者的現代 JavaScript 開發:語法基礎與工程實踐系列文章,主要探討 JavaScript 中使人迷惑的加減乘除與比較等常見運算中的規則與隱式類型轉換;本文中涉及的參考資料所有聲明在了JavaScript 數據結…
做用域是 中的一個重要而又模糊的概念。只有正確使用 做用域,才能使用優秀的設計模式,幫助你規避反作用。本文中,咱們將會詳細分析 的不一樣類型的做用域,以及爲了寫出更好的代碼,介紹它們是如何工做的。
做用域的簡單定義是編譯器須要變量和函數時去查找它們的地方。聽起來很容易對嗎?咱們來…
技術世界在發展,JavaScript也在同步發展。JavaScript在軟件世界建起地盤的頭幾年,它從沒想過涉足服務應用程序、移動端應用程序以及機器人之類業務。今天…
JavaScript 專題系列第十六篇,講解函數組合,而且使用柯里化和函數組合實現 pointfree 模式 需求 咱們須要寫一個函數,輸入 'kevin',返回 'HELLO, KEVIN'。 嘗試 var toUpperCase = function(x) { return…