<em id="09ttv"></em>
    <sup id="09ttv"><pre id="09ttv"></pre></sup>
    <dd id="09ttv"></dd>

        • 首頁

          了解并使用CSS中的rem單位

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

          什么是 rem

          可能在你使用收音機(jī)或者用其他音樂播放器之前,就已經(jīng)聽過“R.E.M.”這個(gè)詞了。在這個(gè)樂隊(duì)眼中,這個(gè)詞是“淺睡眠時(shí)眼球的快速轉(zhuǎn)動(dòng)”的縮寫,而在 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ù)器?這些問題困惑了很久,今天終于梳理清楚了:

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

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

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

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

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

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

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

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

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

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

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

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

          JavaScript世界萬物誕生記

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

          一. 無中生有

          起初,什么都沒有。

          1.png

           

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

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

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

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

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

          于是:

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

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

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

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

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

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

           

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

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

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

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

          先看代碼

          這個(gè)代碼平淡無奇,就是從一個(gè)數(shù)組中找到一個(gè)數(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手勢(shì)檢測(cè)原理和實(shí)現(xiàn)

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

          前言

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

          手勢(shì)

          常用的 HTML5 手勢(shì)可以分為兩類,單點(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))。

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

          1.jpg

          2016年7個(gè)JavaScript框架

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

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

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

          1.AngularJS 2.0&1.x

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

          1.png

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

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

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

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

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

          String 類型的使用

          溫習(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è)人資料

          存檔

          国产精品永久久久久久久久久| 亚洲综合婷婷久久| 综合久久国产九一剧情麻豆| 无码八A片人妻少妇久久| 日韩精品久久久肉伦网站 | 人妻精品久久久久中文字幕69| 欧美熟妇另类久久久久久不卡| 久久99精品国产麻豆宅宅| 亚洲国产成人久久一区久久| 久久婷婷成人综合色综合| 久久久久亚洲AV无码专区桃色| 亚洲精品乱码久久久久久蜜桃不卡 | 亚洲伊人久久综合影院| 国产99精品久久| 亚洲AV无码久久| 99久久国产亚洲高清观看2024| 亚洲AV无码一区东京热久久| 亚洲精品久久久www| 嫩草影院久久国产精品| 少妇人妻88久久中文字幕| 狠狠色丁香婷婷综合久久来来去| 久久亚洲精精品中文字幕| 国产一区二区久久久| 精品久久人人做人人爽综合 | 久久久久久曰本AV免费免费| 久久精品国产亚洲Aⅴ蜜臀色欲| 久久w5ww成w人免费| 亚洲午夜久久久久久噜噜噜| 久久人人添人人爽添人人片牛牛| 久久av免费天堂小草播放| 国产69精品久久久久99尤物 | 久久青青国产| 日本国产精品久久| 久久天天躁狠狠躁夜夜av浪潮| 国产精品伊人久久伊人电影| 久久99国产精品99久久| www.久久精品| AA级片免费看视频久久| 精品国产乱码久久久久久浪潮| 999久久久国产精品| 久久久久久一区国产精品|