狠狠人妻久久久久久综合,亚洲精品自有码中文字,日韩一区二区三区久久综合,三级片免费AV在线 58av国产精品_97AV麻豆蜜桃一区二区_一本之道av不卡精品_丰满年轻岳欲乱在线播放

首頁

一起理解Virtual DOM

藍藍設計的小編

前言

React 好像已經(jīng)火了很久很久,以致于我們對于 Virtual DOM 這個詞都已經(jīng)很熟悉了,網(wǎng)上也有非常多的介紹 React、Virtual DOM 的文章。但是直到前不久我專門花時間去學習 Virtual DOM,才讓我對 Virtual DOM 有了一定的理解,以致于要懷疑起很久之前看過的那些文章來。倒不是這些文章講得不對,而是現(xiàn)在在我看來角度不太好,說得越多,越說不清。

讓我能夠有所開竅(自認為)的,是這篇文章:


Change And Its Detection In JavaScript Frameworks
Monday Mar 2, 2015 by Tero Parviainen


作者看問題的角度很棒,從數(shù)據(jù)變更與UI同步的角度來介紹各個典型框架,特別是對于 React 的 Virtual DOM,從這個角度理解起來更容易些。

了解并使用CSS中的rem單位

藍藍設計的小編

什么是 rem

可能在你使用收音機或者用其他音樂播放器之前,就已經(jīng)聽過“R.E.M.”這個詞了。在這個樂隊眼中,這個詞是“淺睡眠時眼球的快速轉動”的縮寫,而在 css 中,rem 代表著“以根元素為參照物的 em 單位“。他不會讓你拋棄你的宗教信仰也不會讓你相信那個遠在月球的人,但是它可以幫助你實現(xiàn)一個和諧、平穩(wěn)的設計。

根據(jù) W3C 規(guī)范中對 1rem 的定義:

1rem 與等于根元素 font-size 的計算值。當明確規(guī)定根元素的 font-size 時,rem 單位以該屬性的初始值作參照。

Web服務器、應用程序服務器、HTTP服務器區(qū)別

藍藍設計的小編

WEB服務器、應用程序服務器、HTTP服務器有何區(qū)別?IIS、Apache、Tomcat、Weblogic、WebSphere 都各屬于哪種服務器?這些問題困惑了很久,今天終于梳理清楚了:

Web服務器的基本功能就是提供Web信息瀏覽服務。它只需支持HTTP協(xié)議、HTML文檔格式及URL。與客戶端的網(wǎng)絡瀏覽器配合。因為Web服務器主要支持的協(xié)議就是HTTP,所以通常情況下HTTP服務器和WEB服務器是相等的(有沒有支持除HTTP之外的協(xié)議的web服務器,作者沒有考證過),說的是一回事。

應用程序服務器(簡稱應用服務器),我們先看一下微軟對它的定義:”我們把應用程序服務器定義為“作為服務器執(zhí)行共享業(yè)務應用程序的底層的系統(tǒng)軟件”。 就像文件服務器為很多用戶提供文件一樣,應用程序服務器讓多個用戶可以同時使用應用程序(通常是客戶創(chuàng)建的應用程序)”

通俗的講,Web服務器傳送(serves)頁面使瀏覽器可以瀏覽,然而應用程序服務器提供的是客戶端應用程序可以調用(call)的方法(methods)。確切一點,你可以說:Web服務器專門處理HTTP請求(request),但是應用程序服務器是通過很多協(xié)議來為應用程序提供(serves)商業(yè)邏輯 (business logic)。

JavaScript 中對象的深拷貝

藍藍設計的小編

在JavaScript中,對對象進行拷貝的場景比較常見。但是簡單的復制語句只能對對象進行淺拷貝,即復制的是一份引用,而不是它所引用的對象。而更多的時候,我們希望對對象進行深拷貝,避免原始對象被無意修改。

對象的深拷貝與淺拷貝的區(qū)別如下:

  • 淺拷貝:僅僅復制對象的引用,而不是對象本身;
  • 深拷貝:把復制的對象所引用的全部對象都復制一遍。

一. 淺拷貝的實現(xiàn)

淺拷貝的實現(xiàn)方法比較簡單,只要使用是簡單的復制語句即可。

1.1 方法一:簡單的復制語句

/* ================ 淺拷貝 ================ */ function simpleClone(initalObj) { var obj = {}; for ( var i in initalObj) {
        obj[i] = initalObj[i];
    } return obj;
}

JavaScript世界萬物誕生記

藍藍設計的小編

一. 無中生有

起初,什么都沒有。

1.png

 

造物主說:沒有東西本身也是一種東西啊,于是就有了null:

現(xiàn)在我們要造點兒東西出來。但是沒有原料怎么辦?

有一個聲音說:不是有null嘛?

另一個聲音說:可是null代表無啊。

造物主說:那就無中生有吧!

于是:

2.png

更快學習JS的6個簡單思維技巧

藍藍設計的小編

當人們嘗試學習 JavaScript , 或者其他編程技術的時候,常常會遇到同樣的挑戰(zhàn):

  • 有些概念容易混淆,特別是當你學習過其他語言的時候。
  • 很難找到學習的時間(有時候是動力)。
  • 一旦當你理解了一些東西的時候,卻很容易再一次忘記。
  • 可以使用的工具甚多且經(jīng)常變化,所以不知道從哪里開始入手。

幸運的是,這些挑戰(zhàn)最終都可以被戰(zhàn)勝。在這篇文章里,我將介紹 6 個思維技巧來幫你更快的學習 JavaScript ,讓你成為一個更快樂更多產的程序員。

對于很多學習 JavaScript 的人來說,他們問的第一個問題是選用哪個框架(現(xiàn)有框架非常多)。但是如果你還不熟悉原生的 JavaScript ,那這就是個不該問的問題。你會花費你全部的時間去查詢不同的框架并且不會取得任何進展。

詳解JS 變量、作用域及內存

藍藍設計的小編

基本類型值有:undefined,NUll,Boolean,Number和String,這些類型分別在內存中占有固定的大小空間,他們的值保存在??臻g,我們通過按值來訪問的。

 

1)值類型:數(shù)值、布爾值、null、undefined
2)引用類型:對象、數(shù)組、函數(shù)。
 
如果賦值的是引用類型的值,則必須在堆內存中為這個值分配空間。由于這種值的大小不固定(對象有很多屬性和方法),因此不能把他們保存到棧內存中。但內存地址大小是固定的,因此可以將內存地址保存在棧內存中。
 
<script type="text/javascript”>
var box = new Object();  //創(chuàng)建一個引用類型
var box = "trigkit4";   //基本類型值是字符串
box.age = 21;    //基本類型值添加屬性很怪異,因為只有對象才可以添加屬性。
alert(box.age);  //不是引用類型,無法輸出;
</script>
 

如何讀懂并寫出裝逼的函數(shù)式代碼

藍藍設計的小編

今天在微博上看到了 有人分享了下面的這段函數(shù)式代碼,我把代碼貼到下面,不過我對原來的代碼略有改動,對于函數(shù)式的版本,咋一看,的確令人非常費解,仔細看一下,你可能就暈掉了,似乎完全就是天書,看上去非常裝逼,哈哈。不過,我感覺解析那段函數(shù)式的代碼可能會一個比較有趣過程,而且,我以前寫過一篇《函數(shù)式編程》的入門式的文章,正好可以用這個例子,再升華一下原來的那篇文章,順便可以向大家更好的介紹很多基礎知識,所以寫下這篇文章。

先看代碼

這個代碼平淡無奇,就是從一個數(shù)組中找到一個數(shù),O(n)的算法,找不到就返回 null。

下面是正常的 old-school 的方式。不用多說。

//正常的版本 function find (x, y) { for ( let i = 0; i < x.length; i++ ) { if ( x[i] == y ) return i;
  } return null;
} let arr = [0,1,2,3,4,5] console.log(find(arr, 2)) console.log(find(arr, 8))

HTML5手勢檢測原理和實現(xiàn)

藍藍設計的小編

前言

隨著 Hybrid 應用的豐富,HTML5 工程師們已經(jīng)不滿足于把桌面端體驗簡單移植到移動端,他們覬覦移動原生應用人性化的操作體驗,特別是原生應用與生俱來的豐富的手勢系統(tǒng)。HTML5 沒有提供開箱即用的手勢系統(tǒng),但是提供了更底層一些的對 touch 事件的監(jiān)聽?;诖耍覀兛梢宰龀鲎约旱氖謩輲?。

手勢

常用的 HTML5 手勢可以分為兩類,單點手勢和兩點手勢。單點手勢有 tap(單擊),double tap(雙擊),long tap(長按),swipe(揮),move(移動)。兩點手勢有 pinch(縮放),rotate(旋轉)。

接下來我們實現(xiàn)一個檢測這些手勢的 javaScript 庫,并利用這個手勢庫做出炫酷的交互效果。

1.jpg

2016年7個JavaScript框架

藍藍設計的小編

當涉及到Web開發(fā)時,JavaScript框架往往是一些開發(fā)人員和企業(yè)的平臺??赡?,你有機會嘗試過一兩個的JavaScript框架,但你仍然有點不確定哪個才是最佳的最值得掌握的,或者哪個值得你建議你的開發(fā)人員選擇用于下一個web開發(fā)項目。

JavaScript正在以驚人的速度前進,并且添加新的技能到你的存儲庫變得有不斷的壓力。為了做到這一點,知道和了解更多的JavaScript框架在現(xiàn)在看來是必要的。在ValueCoders進行了徹底的研究后,我們入圍了其中七個框架,它們是:

1.AngularJS 2.0&1.x

在最受期待的AngularJS 2.0正式發(fā)布之后,框架的普及已經(jīng)達到了一個新的水平。然而,如果你不確定的話,跳到新版本仍然是一個冒險的決定。讓我們通過這個流程圖來幫助你做出決定:

1.png

日歷

鏈接

個人資料

藍藍設計的小編 http://www.liangyajiaju.cn

存檔