開始使用下劃線
鑰匙要點
- underscore.js是一個JavaScript庫,為各種用例提供功能性實用程序,使代碼更易於讀寫,並且在本機JavaScript中不總是可用的功能。 >
- 庫包括用於編寫可讀循環的常見方法,例如_.each(),_.template()用於直觀和直接的模板,以及_.filter()用於使用boolean函數過濾數組的_ .filter()。 underscore.js輕巧,並由許多大牌項目使用,包括《今日美國》,《 LinkedIn》和《汗學院》。
- >使用unterscore.js,jQuery和Spotify Web API的演示應用程序演示瞭如何使用庫從API獲取和顯示數據,並允許用戶過濾結果。
underscore.js是由Jeremy Ashkenas撰寫的JavaScript庫,為各種用例提供了功能性實用程序,我們作為開發人員在面對Web項目時可能會遇到這些用例。 > 它製作的代碼更容易閱讀:
>它使代碼更易於編寫:
>
_.isEmpty({}); // true
>它本身甚至可以用作模板引擎:
_.flatten([[0, 1], [2, 3], [4, 5]]); // [0, 1, 2, 3, 4, 5]
>下劃線是一個輕量級的庫(僅5.7kb,縮小和GZPECT),並由多種知名項目使用,例如:
_.range(5); // [0, 1, 2, 3, 4]
_.template('<p><%= text %></p>', {text: 'SitePoint Rocks!'}); // <p>SitePoint Rocks!</p>
汗學院
- 現在,讓我們更具體地開始潛入其主要功能。
> 好零件 - 在本教程中,我將重點介紹下劃線最常見的三種方法:
_。 template()
_。 filter()
- >我將解釋它們是如何單獨使用的,然後將它們綁在一起以構建在教程結束時可以找到的演示應用程序。與以往一樣,此演示的代碼可在GitHub上獲得。
- > 如果您想遵循示例,則需要獲取圖書館的副本,例如,您喜歡的cdn:
- >,如果您發現自己一路需要幫助,或者您只是好奇地發現更多,請不要忘記,下劃線的文檔是廣泛的。它也有一個龐大而活躍的社區,這意味著很容易找到幫助。
- > _。每個:寫入可讀循環
在代碼中的某個時刻,沒有一個與此片段相似的單個項目:
>下劃線使您可以使用更可讀的語法編寫等效代碼:
_.isEmpty({}); // true
整潔,是嗎? _.EATEAD()採用兩個參數:
- 段(或對象)要迭代。 >
- >回調函數。
)。在回調中,我們可以訪問另外三個參數:
當前迭代索引(藝術家)的數組值。例如,對於上面的摘要,我們將獲得第一次迭代的“ pharrel williams”。- >
- >當前迭代的數量(索引),在我們的情況下,該迭代的數量將從0到2不等。 我們正在通過(藝術家)迭代的數組。
- 您可以看到代碼更可讀,我們可以訪問數組中的各個元素而無需藝術家[i],就像我們在示例中看到的示例。
- >請參閱codepen上的sitepoint(@sitepoint)的筆 接下來,我們將看到模板引擎的行為。
_。 template():直觀而直接
以來,自單頁應用程序的興起以來,擁有可靠的前端模板引擎已成為我們工作堆棧的基本需求。
>下劃線提供了一個模板引擎,對於那些熟悉PHP或Ruby在Rails上的語言的人來說,它似乎很熟悉。 在以前的片段中繼續進行
,我們將演示_.template()的工作方式。我們將通過在我們的代碼中添加幾行,如下所示:>在這裡,我們正在使用字符串參數調用_.template()函數,該函數包括定界符中的一些數據()。當以這種方式調用時,_.template()返回一個函數,我們可以一次又一次使用。
>
>我們可以使用ArtistTemplate()調用我們的新功能,將其傳遞給對象字面作為參數。這將返回我們最初傳遞給_.template()的字符串,替換與模板自由變量相對應的任何對象屬性。在我們的情況下>下劃線的模板引擎不僅允許更換單個值,而且還允許在模板本身內部執行腳本。通過一次修改,我們可以使我們的片段更加強大。
>>我們已將對_.each()的調用納入代表我們模板的字符串,這使我們更改了調用模板的方式。由於我們現在在_.template()函數中迭代,因此我們可以將完整的藝術家陣列傳遞到ArtistTemplate()(以前我們正在通過單個藝術家)。此代碼的輸出將與上一個示例中的輸出相同。
_.flatten([[0, 1], [2, 3], [4, 5]]); // [0, 1, 2, 3, 4, 5]
當我們想要_.template()評估JavaScript代碼時,我們只需要在> 的之間包圍我們的代碼
>自調用由_.template生成的模板就像調用函數一樣,我們可以將摘要更進一步,並通過使用 tags將一個模板從另一個內部調用。這樣,我們可以製作可重複使用的模板,因為我們可以為我們的藝術家列表提供不同的包裝模板,並為其包含的每個項目調用模板。>請參見codepen上的sitepoint(@sitepoint)的pen _.template()。
最後,讓我們看一下_.filter()函數。>
_。 Filter():您所需要的只是一個布爾函數_。 filter()接收一個數組和回調函數作為參數。然後,它調用數組中每個元素的函數,並返回一個新數組,其中包含這些元素,該元素將函數評估為真實的事物。
>我們的回調函數還將收到三個參數,如_.eeld()案例:與當前迭代索引相對應的數組中的元素,迭代的索引和數組本身。
為了澄清這一點,讓我們對我們的片段進行幾個修改。 >
正如您可能已經猜到的那樣,在我們的模板中,我們將收到['acdc']作為數組參數。這是我們到目前為止的演示。 >
>請參閱codepen上的sitepoint(@sitepoint)的筆_.filter()足夠說。讓我們為某些事情變得更有意義的事物工作。
>我們的演示應用程序
_.isEmpty({}); // true
> jQuery
。
Spotify Web API
態
config Module
配置模塊包含要使用的模板的ID,以及我們要查詢的API的URL以及我們希望從Spotify獲得的藝術家的ID。這樣,我們可以通過在數組中添加更多元素來添加更多的藝術家。 >
模板模塊>
主模塊
這是我們將用來進行過濾的按鈕的標記:
這是我們將傳遞給過濾器函數的對象的一個示例:
_.isEmpty({}); // true
以上是開始使用下劃線的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

JavaScript是現代Web開發的基石,它的主要功能包括事件驅動編程、動態內容生成和異步編程。 1)事件驅動編程允許網頁根據用戶操作動態變化。 2)動態內容生成使得頁面內容可以根據條件調整。 3)異步編程確保用戶界面不被阻塞。 JavaScript廣泛應用於網頁交互、單頁面應用和服務器端開發,極大地提升了用戶體驗和跨平台開發的靈活性。

JavaScript的最新趨勢包括TypeScript的崛起、現代框架和庫的流行以及WebAssembly的應用。未來前景涵蓋更強大的類型系統、服務器端JavaScript的發展、人工智能和機器學習的擴展以及物聯網和邊緣計算的潛力。

不同JavaScript引擎在解析和執行JavaScript代碼時,效果會有所不同,因為每個引擎的實現原理和優化策略各有差異。 1.詞法分析:將源碼轉換為詞法單元。 2.語法分析:生成抽象語法樹。 3.優化和編譯:通過JIT編譯器生成機器碼。 4.執行:運行機器碼。 V8引擎通過即時編譯和隱藏類優化,SpiderMonkey使用類型推斷系統,導致在相同代碼上的性能表現不同。

JavaScript是現代Web開發的核心語言,因其多樣性和靈活性而廣泛應用。 1)前端開發:通過DOM操作和現代框架(如React、Vue.js、Angular)構建動態網頁和單頁面應用。 2)服務器端開發:Node.js利用非阻塞I/O模型處理高並發和實時應用。 3)移動和桌面應用開發:通過ReactNative和Electron實現跨平台開發,提高開發效率。

Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。

本文展示了與許可證確保的後端的前端集成,並使用Next.js構建功能性Edtech SaaS應用程序。 前端獲取用戶權限以控制UI的可見性並確保API要求遵守角色庫

從C/C 轉向JavaScript需要適應動態類型、垃圾回收和異步編程等特點。 1)C/C 是靜態類型語言,需手動管理內存,而JavaScript是動態類型,垃圾回收自動處理。 2)C/C 需編譯成機器碼,JavaScript則為解釋型語言。 3)JavaScript引入閉包、原型鍊和Promise等概念,增強了靈活性和異步編程能力。

JavaScript不需要安裝,因為它已內置於現代瀏覽器中。你只需文本編輯器和瀏覽器即可開始使用。 1)在瀏覽器環境中,通過標籤嵌入HTML文件中運行。 2)在Node.js環境中,下載並安裝Node.js後,通過命令行運行JavaScript文件。
