欧美成人午夜无码A片秀色直播,欧美疯狂性受xxxxx另类,人妻半推半就精油按摩的注意事项 ,国产AV永久精品无码

首頁(yè)

了解并使用CSS中的rem單位

藍(lán)藍(lán)設(shè)計(jì)的小編

什么是 rem

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

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

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

Web服務(wù)器、應(yīng)用程序服務(wù)器、HTTP服務(wù)器區(qū)別

藍(lán)藍(lán)設(shè)計(jì)的小編

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

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

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

通俗的講,Web服務(wù)器傳送(serves)頁(yè)面使瀏覽器可以瀏覽,然而應(yīng)用程序服務(wù)器提供的是客戶(hù)端應(yīng)用程序可以調(diào)用(call)的方法(methods)。確切一點(diǎn),你可以說(shuō):Web服務(wù)器專(zhuān)門(mén)處理HTTP請(qǐng)求(request),但是應(yīng)用程序服務(wù)器是通過(guò)很多協(xié)議來(lái)為應(yīng)用程序提供(serves)商業(yè)邏輯 (business logic)。

JavaScript 中對(duì)象的深拷貝

藍(lán)藍(lán)設(shè)計(jì)的小編

在JavaScript中,對(duì)對(duì)象進(jìn)行拷貝的場(chǎng)景比較常見(jiàn)。但是簡(jiǎn)單的復(fù)制語(yǔ)句只能對(duì)對(duì)象進(jìn)行淺拷貝,即復(fù)制的是一份引用,而不是它所引用的對(duì)象。而更多的時(shí)候,我們希望對(duì)對(duì)象進(jìn)行深拷貝,避免原始對(duì)象被無(wú)意修改。

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

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

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

淺拷貝的實(shí)現(xiàn)方法比較簡(jiǎn)單,只要使用是簡(jiǎn)單的復(fù)制語(yǔ)句即可。

1.1 方法一:簡(jiǎn)單的復(fù)制語(yǔ)句

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

JavaScript世界萬(wàn)物誕生記

藍(lán)藍(lán)設(shè)計(jì)的小編

一. 無(wú)中生有

起初,什么都沒(méi)有。

1.png

 

造物主說(shuō):沒(méi)有東西本身也是一種東西啊,于是就有了null:

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

有一個(gè)聲音說(shuō):不是有null嘛?

另一個(gè)聲音說(shuō):可是null代表無(wú)啊。

造物主說(shuō):那就無(wú)中生有吧!

于是:

2.png

更快學(xué)習(xí)JS的6個(gè)簡(jiǎn)單思維技巧

藍(lán)藍(lán)設(shè)計(jì)的小編

當(dāng)人們嘗試學(xué)習(xí) JavaScript , 或者其他編程技術(shù)的時(shí)候,常常會(huì)遇到同樣的挑戰(zhàn):

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

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

對(duì)于很多學(xué)習(xí) JavaScript 的人來(lái)說(shuō),他們問(wèn)的第一個(gè)問(wèn)題是選用哪個(gè)框架(現(xiàn)有框架非常多)。但是如果你還不熟悉原生的 JavaScript ,那這就是個(gè)不該問(wèn)的問(wèn)題。你會(huì)花費(fèi)你全部的時(shí)間去查詢(xún)不同的框架并且不會(huì)取得任何進(jìn)展。

詳解JS 變量、作用域及內(nèi)存

藍(lán)藍(lán)設(shè)計(jì)的小編

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

 

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

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

藍(lán)藍(lán)設(shè)計(jì)的小編

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

先看代碼

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

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

//正常的版本 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手勢(shì)檢測(cè)原理和實(shí)現(xiàn)

藍(lán)藍(lán)設(shè)計(jì)的小編

前言

隨著 Hybrid 應(yīng)用的豐富,HTML5 工程師們已經(jīng)不滿(mǎn)足于把桌面端體驗(yàn)簡(jiǎn)單移植到移動(dòng)端,他們覬覦移動(dòng)原生應(yīng)用人性化的操作體驗(yàn),特別是原生應(yīng)用與生俱來(lái)的豐富的手勢(shì)系統(tǒng)。HTML5 沒(méi)有提供開(kāi)箱即用的手勢(shì)系統(tǒng),但是提供了更底層一些的對(duì) touch 事件的監(jiān)聽(tīng)?;诖?,我們可以做出自己的手勢(shì)庫(kù)。

手勢(shì)

常用的 HTML5 手勢(shì)可以分為兩類(lèi),單點(diǎn)手勢(shì)和兩點(diǎn)手勢(shì)。單點(diǎn)手勢(shì)有 tap(單擊),double tap(雙擊),long tap(長(zhǎng)按),swipe(揮),move(移動(dòng))。兩點(diǎn)手勢(shì)有 pinch(縮放),rotate(旋轉(zhuǎn))。

接下來(lái)我們實(shí)現(xiàn)一個(gè)檢測(cè)這些手勢(shì)的 javaScript 庫(kù),并利用這個(gè)手勢(shì)庫(kù)做出炫酷的交互效果。

1.jpg

2016年7個(gè)JavaScript框架

藍(lán)藍(lán)設(shè)計(jì)的小編

當(dāng)涉及到Web開(kāi)發(fā)時(shí),JavaScript框架往往是一些開(kāi)發(fā)人員和企業(yè)的平臺(tái)。可能,你有機(jī)會(huì)嘗試過(guò)一兩個(gè)的JavaScript框架,但你仍然有點(diǎn)不確定哪個(gè)才是最佳的最值得掌握的,或者哪個(gè)值得你建議你的開(kāi)發(fā)人員選擇用于下一個(gè)web開(kāi)發(fā)項(xiàng)目。

JavaScript正在以驚人的速度前進(jìn),并且添加新的技能到你的存儲(chǔ)庫(kù)變得有不斷的壓力。為了做到這一點(diǎn),知道和了解更多的JavaScript框架在現(xiàn)在看來(lái)是必要的。在ValueCoders進(jìn)行了徹底的研究后,我們?nèi)雵似渲衅邆€(gè)框架,它們是:

1.AngularJS 2.0&1.x

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

1.png

JavaScript 數(shù)組中的 indexOf 方法詳解

藍(lán)藍(lán)設(shè)計(jì)的小編

最近項(xiàng)目遇到一個(gè)小問(wèn)題代碼我會(huì)簡(jiǎn)化成小例子展示給大家。

用心看到最后會(huì)有收獲哈,基礎(chǔ)扎實(shí)的童鞋可以直接跳到數(shù)組類(lèi)型使用。

說(shuō)到 indexOf 大家并不陌生,判斷字符串是否包涵子字符串時(shí)特別常用(正則不熟練同學(xué)的利器)。

String 類(lèi)型的使用

溫習(xí)一下大家熟知的字符串用法,舉個(gè)例子

let str = 'orange';

str.indexOf('o'); //0 str.indexOf('n'); //3 str.indexOf('c'); //-1

這里 0 和 3 分別是 o 和 n 在字符串中出現(xiàn)的位置。起始下標(biāo)是 0。而 -1 代表未匹配。

日歷

鏈接

個(gè)人資料

存檔