<strike id="cy2gs"><menu id="cy2gs"></menu></strike>
  • <del id="cy2gs"><dfn id="cy2gs"></dfn></del>
  • 首頁

    JavaScript arguments 對象詳解

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

    1. 什么是 arguments

    MDN 上解釋:

    arguments 是一個類數(shù)組對象。代表傳給一個function的參數(shù)列表。

    我們先用一個例子直觀了解下 JavaScript 中的 arguments 長什么樣子。

    function printArgs() { console.log(arguments);
    }
    
    printArgs("A", "a", 0, { foo: "Hello, arguments" });

    執(zhí)行結(jié)果是:

    jQuery XML 解析器和搜索機(jī)制

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

    介紹

    這里所描述的過程將使你能夠創(chuàng)建一個簡單的基于jQuery / XML的解析器和搜索機(jī)制。此過程將通過一個AJAX請求檢索XML,然后在jQuery中分析數(shù)據(jù),為搜索機(jī)制做準(zhǔn)備。該解決方案將基于不區(qū)分大小寫的全部或部分關(guān)鍵字匹配地返回結(jié)果。來自于關(guān)鍵字搜索的返回結(jié)果設(shè)置將被格式化為一個直接鏈接到相應(yīng)網(wǎng)站的超鏈接。jQuery搜索方法非常類似于Mike Endale的一個項目,不過增加了一個DOM解析器,正則表達(dá)式以及結(jié)果集分組。

    背景

    客戶端需要一個簡單的搜索工具來查找基于關(guān)鍵字搜索的本地內(nèi)部網(wǎng)站。關(guān)鍵字搜索必須不區(qū)分大小寫,并允許返回部分匹配的結(jié)果。歸咎于客戶端內(nèi)容管理系統(tǒng)的架構(gòu),因此(SharePoint)只能執(zhí)行客戶端腳本。其解決方案的另一個障礙是,源數(shù)據(jù)將來自多個源。數(shù)據(jù)被存儲在多個Excel電子表格,CSV文件和MS Access數(shù)據(jù)庫內(nèi)。這就對我們提出了這樣的需要:開發(fā)具有一系列查詢和一個宏的Access解決方案,充當(dāng)可合并、擦洗,并最后格式化數(shù)據(jù)作為XML輸出的偽ETL。對于這個解決方案的目的,我們將詳細(xì)介紹JavaScript XML分析器的設(shè)計,而不是偽Access ETL宏工具的設(shè)計。

    使用代碼

    該解決方案的做法是利用一個簡單的基于JavaScript / XML的搜索來發(fā)送數(shù)據(jù)結(jié)果到HTML / JavaScript前端。前端將引用腳本:jQuery,XML和CSS文件。XML格式將因為它的可讀性和它是數(shù)據(jù)交換行業(yè)標(biāo)準(zhǔn)格式之一的事實(shí)而被使用。 XML數(shù)據(jù)將通過使用AJAX的客戶端jQuery解析,并通過Internet Explorer 11呈現(xiàn)。

    解決方案將使用RegExp對象來處理關(guān)鍵字匹配,驗證和特殊字符處理。RegExp對象字符串將檢查危險語法從而提高解決方案的穩(wěn)定性和整體可用性。

    我們將默認(rèn)使用JavaScript分組功能來返回匹配結(jié)果作為折疊的紀(jì)錄集。折疊的記錄集線項目將被URL鏈接到相關(guān)的Project Workspace網(wǎng)站。在擴(kuò)展的組記錄集下,結(jié)果將存在于相關(guān)的子記錄中,當(dāng)通過On Click事件展開的時候。

    選擇 Reac??tJS 的五大理由

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

    ReactJS是一個開源的JavaScript庫,并且由Facebook和Instagram這樣的頂尖IT企業(yè)以及開發(fā)者社區(qū)所維護(hù)。該框架廣泛使用于為web應(yīng)用程序開發(fā)用戶界面的時候。這個特殊的框架被發(fā)明時帶有這樣一個目的:

    “構(gòu)建數(shù)據(jù)隨著時間的推移一次又一次改變的大型應(yīng)用程序。”

    我們經(jīng)常使用的工具有很多,但只有少數(shù)徹底改變了我們的工作流程。ReactJS就是其中之一。隨著現(xiàn)在可用框架變得越來越多,我們很難找到一個最終不會窮途末路的框架。這就是為什么在ValueCoders我們建議去往React。

    01.png

    能用HTML/CSS解決的問題就不要使用JS

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

    為什么說能使用html/css解決的問題就不要使用JS呢?兩個字,因為簡單。簡單就意味著更快的開發(fā)速度,更小的維護(hù)成本,同時往往具有更好的體驗,下面介紹幾個實(shí)例。

    1. 導(dǎo)航高亮

    導(dǎo)航高亮是一種很常見的問題,包括當(dāng)前頁面的導(dǎo)航在菜單里面高亮和hover時高亮。你可以用js控制,但是用一點(diǎn)CSS技巧就可以達(dá)到這個目的,不需要使用JS。

    1.png

    2.png

    在正常態(tài)時,每個導(dǎo)航的默認(rèn)樣式為:

    JavaScript 閉包的底層運(yùn)行機(jī)制

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

    當(dāng)JavaScript在運(yùn)行的時候,它需要一些空間讓它來存儲本地變量(local variables)。我們將這些空間稱為作用域?qū)ο螅⊿cope object),有時候也稱作LexicalEnvironment。例如,當(dāng)你調(diào)用函數(shù)時,函數(shù)定義了一些本地變量,這些變量就被存儲在一個作用域?qū)ο笾小D憧梢詫⒆饔糜蚝瘮?shù)想象成一個普通的JavaScript對象,但是有一個很大的區(qū)別就是你不能夠直接在JavaScript當(dāng)中直接獲取這個對象。你只可以修改這個對象的屬性,但是你不能夠獲取這個對象的引用。

    作用域?qū)ο蟮母拍钍沟肑avaScript和C、C++非常不同。在C、C++中,本地變量被保存在棧(stack)中。在JavaScript中,作用域?qū)ο笫窃诙阎斜粍?chuàng)建的(至少表現(xiàn)出來的行為是這樣的),所以在函數(shù)返回后它們也還是能夠被訪問到而不被銷毀。

    JavaScript 中匿名函數(shù)的遞歸調(diào)用

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

    不管是什么編程語言,相信稍微寫過幾行代碼的同學(xué),對遞歸都不會陌生。 以一個簡單的階乘計算為例:

    function factorial(n) { if (n <= 1) { return 1;
        } else { return n * factorial(n-1);
        }
    }

    我們可以看出,遞歸就是在函數(shù)內(nèi)部調(diào)用對自身的調(diào)用。 那么問題來了,我們知道在Javascript中,有一類函數(shù)叫做匿名函數(shù),沒有名稱,怎么調(diào)用呢?當(dāng)然你可以說,可以把匿名函數(shù)賦值給一個常量:

    const factorial = function(n){ if (n <= 1) { return 1;
        } else { return n * factorial(n-1);
        }
    }

    技術(shù)的執(zhí)念

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

    只需稍加留意,我們就會發(fā)現(xiàn)自己被各種技術(shù)、工具包圍。ThoughtWorks的技術(shù)雷達(dá)差不多每半年就會更新一次,在項目中更會遇到很多已經(jīng)從技術(shù)雷達(dá)上消失的技術(shù),項目上的舊技術(shù)/舊框架還在服役,新的技術(shù)/工具/語言/框架又在迅速的出現(xiàn),有些曇花一現(xiàn)、迅速被新的后來者所取代。有的留下來了,不過也都在不斷的演化、改變(不兼容的API,不同的版本等隨處可見)。

    1.png

     

    JavaScript 事件對內(nèi)存和性能的影響

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

    雖說事件處理程序可以為現(xiàn)代 Web 頁面添加很強(qiáng)的交互能力,但是不分青紅皂白就添加大量的事件處理程序絕對是一種愚蠢的行為。

    我們來分析一下:事件處理程序本質(zhì)上是一種函數(shù),是一種對象,存放在內(nèi)存中,設(shè)置大量的事件處理程序會使內(nèi)存中的對象變多,Web 程序的性能會變得越來越差,用戶體驗很不好。

    為了更好地利用好事件處理程序,便出現(xiàn)了事件委托,用來提升性能。

    JavaScript 中的面向?qū)ο缶幊?/a>

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

    JavaScript 是一個強(qiáng)大的面向?qū)ο缶幊陶Z言,但是,并不像傳統(tǒng)的編程語言,它采用一個以原型為基礎(chǔ)的OOP模型,致使它的語法讓大多數(shù)開發(fā)人員看不懂。另外,JavaScript 也把函數(shù)作為首要的對象,這可能會給不夠熟悉這門語言的開發(fā)人員造成更大的困惑。那就是我們決定放在前面作為一個簡短前言進(jìn)行介紹的原因,并且在 JavaScript 里也可以用作面向?qū)ο缶幊痰囊粋€參考。

    這個文檔沒有提供一個面向?qū)ο缶幊痰囊?guī)則預(yù)覽,但有它們的接口概述。

    了解HTML/HTML5中的download屬性

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

    一、download屬性是個什么鬼?

    首先看下面這種截圖

    1.png

     

    如果我們想實(shí)現(xiàn)點(diǎn)擊上面的下載按鈕下載一張圖片,你會如何實(shí)現(xiàn)?

    我們可能會想到一個最簡單的方法,就是直接按鈕a標(biāo)簽鏈接一張圖片,類似下面這樣:

    <a href="large.jpg">下載</a>

    但是,想法雖好,實(shí)際效果卻不是我們想要的,因為瀏覽器可以直接瀏覽圖片,因此,我們點(diǎn)擊下面的“下載”鏈接,并是不下載圖片,而是在新窗口直接瀏覽圖片。

    日歷

    鏈接

    個人資料

    存檔

    主站蜘蛛池模板: 亚洲精品无码精品mV在线观看| 无码精品人妻一区二区三区免费| 久久精品国产99久久香蕉| 国产午夜精品久久久久免费视| 精品国产日韩亚洲一区| 国产精品1区2区| 青青青国产精品一区二区| 久久久精品视频免费观看| 欧美巨大黑人精品videos| 麻豆成人久久精品二区三区免费| 巨大黑人极品VIDEOS精品| 99久久免费国产精品| 99国产精品久久| 精品无码人妻一区二区免费蜜桃| 欧美在线精品一区二区三区| 性色精品视频网站在线观看| 国产91精品在线观看| 久久亚洲私人国产精品vA | 亚洲国产精品一区二区第四页| 亚洲精品欧美综合在线| 99久久精品费精品国产一区二区| 日韩精品乱码AV一区二区| 亚洲精品99久久久久中文字幕| 久久久不卡国产精品一区二区| 国产精品H片在线播放| 久久国产精品成人免费| 国产精品1区2区3区在线播放| 2021精品国产综合久久| 精品久久久无码人妻中文字幕豆芽 | 国产精品白浆在线观看免费| 精品一区二区三区自拍图片区| 亚洲AV永久无码精品一百度影院| 中文字幕日本精品一区二区三区| 亚洲国产精品无码久久九九| 一本一本久久a久久综合精品蜜桃| 色婷婷噜噜久久国产精品12p| 日本国产精品久久| 正在播放国产精品每日更新| 亚洲色精品vr一区二区三区| 一本一道久久a久久精品综合| 中文字幕无码精品三级在线电影 |