Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 中文字幕日本久久2019,日韩一级一片,国产成人免费高清视频

          整合營銷服務商

          電腦端+手機端+微信端=數(shù)據(jù)同步管理

          免費咨詢熱線:

          0基礎前端學習入門路徑

          0基礎前端學習入門路徑

          上的文章和教程很多,有經(jīng)驗的人能夠根據(jù)他人的資料制定出屬于自己的學習方法和路徑,但對于小白來說,還是有些難度。所以我寫了這篇文章,結合個人學習前端的經(jīng)歷。針對0基礎,非科班,沒有編程經(jīng)驗,想學前端,但是不知道如何入門的人群。


          結合個人經(jīng)歷總結的前端入門方法,總結從零基礎到具備前端基本技能的道路、學習方法、資料。由于能力有限,不能保證面面俱到,只是作為入門參考,面向初學者,讓初學者少走彎路。



          一、計算機基礎


          前端也是編程,和計算機原理是分不開干系的。因此在學習前端之前,最好先大致了解一下,不需要有多深入。看這幾本書就行:


          • 《計算機是怎樣跑起來的》[1]:通俗易懂的介紹了計算機的各個方面,見森林而不見樹木,全書讀下來你就能對計算機有個整體的了解。閱讀難度:★ ,一個下午就能看完并理解。


          • 《程序是怎樣跑起來的》[2]:看書名你就知道這是同一個作者寫的,從軟件層面講的,老實說我也沒看太懂。閱讀難度:★★,一個下午看完。一遍過,遇到不理解也沒關系,一口氣讀完就行。


          • 《深入了解計算機系統(tǒng)》[3]:被人們戲稱“龍書”,如果說《計算機是怎樣跑起來的》是“見森林而不見樹木”,那這本書就是“帶你探索亞馬遜森林的每一個角落”,這里只是一提,不建議小白閱讀。閱讀難度:★★★,三星代表新手勿入!


          • 《Github入門與實踐》[4]:開始敲HTML代碼之后,是不是需要管理自己的代碼?但是打開Github發(fā)現(xiàn)全是英文也不知道怎么操作??催@本書就行。閱讀難度:★,一個下午看完


          • 《樹莓派開始,玩轉Linux》[5]:樹莓派很有趣,也可以了解Linux。但是對前期學習HTML和CSS沒有幫助。閱讀難度:★,一個下午看完


          二、前端知識體系圖譜


          這個前端工程師知識圖譜很全面,達到這個程度已經(jīng)是3-5年程度了,但是新手可能看不懂。沒關系,大致瀏覽一遍里面的每個名詞,然后跳到第三部分“制定計劃”



          三、制定計劃


          這是阿里云大學的《前端開發(fā)學習路線》[6]課程,是我綜合了中國慕課網(wǎng)、黑馬程序員、網(wǎng)易公開課、網(wǎng)易課堂、騰訊課堂 、慕課網(wǎng)、coursera等各個課程機構得出來最好的課程。非常適合新手小白一站式入門前端。


          學習計劃以此為準,可入門看懂代碼。在此基礎上,輔以書籍,便可進階。再然后,就靠實戰(zhàn)做項目積累經(jīng)驗了。


          書籍推薦依次是:

          • HTML:先看《HTML & CSS設計與構建網(wǎng)站》[7]1-9章,然后《HTML5秘籍》[8]1-4章。
          • CSS:先看《CSS 實戰(zhàn)手冊》[9],然后《CSS權威指南》[10]
          • Javascript:先看《javascript高級程序設計》[11],然后《javascript權威指南》[12]
          • HTTP:看《HTTP權威指南》[13]



          筆者經(jīng)歷到此,正在前進中,共勉。


          四、建議


          最后給點建議,讀者在學習前端的時候,可能會陷入一個誤區(qū):


          過于沉浸在獲取資訊之中,以為自己看了這些,就能快速成為前端大神了。卻沒有下苦功夫對照課程去動手一行一行地敲代碼。


          這是本末倒置。


          誠然,相比于枯燥的看書學課敲代碼,看資訊是輕松且容易讓人滿足的,人心肯定會傾向做簡單快樂的事情。但你想,一個人是踏踏實實敲1年代碼之后獲得的成就高,還是漂浮在表面看1年文章之后獲得的成就高?


          再舉個例子。王麻子寫博客,看了1年的教你如何寫博客教程,才開始動筆去寫。張二蛋寫博客,把情況了解個大概后,每天就固定保持一篇原創(chuàng)。結果是,1年下來王麻子啥事都沒干成,卻以為自己思維得到了提升,飄在天上。而張二蛋1年下來卻寫了整整365篇原創(chuàng)文章,已然獲得了不小的成就。


          這便是術與道。


          寫代碼是術,看教程是道。年輕人,先要有術,術練扎實了,道自然就從心中來了。倘若看不清楚,先追求宏觀的大道,卻沒有扎實的術作為基礎,那這就很危險,如樂高積木堆的樓,一碰就倒。練武之前,先扎馬步,也是這個道理。


          大道至簡,悟在天成。復雜的事情簡單做,簡單的事情重復做,重復的事情用心做。寫自媒體也是一樣,沒有成功的捷徑,就是寫文章,其他什么引流、什么運營都是表面,只是錦上添花。引流和運營得有土壤才能結果,這個土壤便是你的文章。


          每天1篇,堅持寫5年,你就成功了。道理永遠這么簡單。許多人一輩子只停留在知道,卻永遠也悟不透。所以,他們寫不了5年。


          日拱一卒,功不唐捐。全情投入,愿等花開。


          References

          [1]《計算機是怎樣跑起來的》: https://book.douban.com/subject/26397183/

          [2] 《程序是怎樣跑起來的》: https://book.douban.com/subject/26365491/

          [3] 《深入了解計算機系統(tǒng)》:https://book.douban.com/subject/26912767/

          [4] 《Github入門與實踐》:https://book.douban.com/subject/26462816/

          [5] 《樹莓派開始,玩轉Linux》: https://book.douban.com/subject/30259573/

          [6] 《前端開發(fā)學習路線》: https://edu.aliyun.com/roadmap/frontend?spm=5176.13345299.1392477.6.4520f153AYCZWC

          [7] 《HTML & CSS設計與構建網(wǎng)站》: https://book.douban.com/subject/21338365/

          [8] 《HTML5秘籍》:https://book.douban.com/subject/11610880/

          [9]《CSS 實戰(zhàn)手冊》: https://book.douban.com/subject/26898555/

          [10]《CSS權威指南》: https://book.douban.com/subject/33398314/

          [11] 《javascript高級程序設計》:https://book.douban.com/subject/10546125/

          [12] 《javascript權威指南》: https://book.douban.com/subject/10549733/

          [13] 《HTTP權威指南》:https://book.douban.com/subject/10746113/


          往期回顧:

          第二代Web世界導航,互聯(lián)網(wǎng)人必備

          第一代Web世界導航,互聯(lián)網(wǎng)人必備

          武漢肺炎,怎么辦?

          語雀=新的紅利?

          廣告巨頭,字節(jié)跳動


          文章訂閱:

          麻雀通訊每天發(fā)布一篇文章,類型是科技、互聯(lián)網(wǎng)與生活。點擊文章頂部“關注”,即可訂閱。

          當初笨拙地用記事本鍵入從新華書店偷偷抄來的代碼寫的第一張 HTML 網(wǎng)頁開始,到現(xiàn)在用上最先進的 HTML5、CSS3 以及其它如 jQeury 等各種各樣成熟的 WEB 前端技術,不覺間已經(jīng) 11 年了。一路走來,經(jīng)歷了 HTML 還沒有區(qū)分結構層和表現(xiàn)層、大量使用 Table 嵌套布局的時代。繼而 CSS 神一般地出現(xiàn),卸下 HTML 充當表現(xiàn)層的重擔,成為 WEB 前端開發(fā)新標準的時代。到現(xiàn)在隨著 HTML5 和 CSS3 技術日趨成熟,進入響應式 WEB 前端技術應用的新時代。雖然技術的發(fā)展總是在不斷更新,但學習方法卻并沒發(fā)生多大的改變。作為一名新手,找到一本把你引入一條正確的學習路徑、幫你愉快入門的好書是十分必要的。

          猶記得當初資料匱乏,只能靠扒文檔和悟性不斷試錯摸索,每當被一個問題難到時,總期待有一位大神能出手相助,但到最后才發(fā)現(xiàn),能真正幫到你的只有你自己。而提升自己技術能力的最有效手段就是讀書??赡苣銜f看一些技術文檔或網(wǎng)友的博客分享也不錯呀,但這種學習方法的缺點是很明顯的。比如對于遇到的某些問題可能當時根據(jù)別人提供的現(xiàn)成方案解決了,卻少了系統(tǒng)性的學習才能對知識點的消化,當下次再遇到同樣問題時,難免需要再次返回來尋找解決方法。就像編程中的“黑匣子”,不吃透它,它總會來煩你。下面是筆者精選出的一些 WEB 前端技術書籍,希望對做著相關工作或對此感興趣的小伙伴有所幫助。

          目錄

          一、《CSS 設計指南(第 3 版)》
          二、《響應式 Web 設計 — HTML5 和 CSS3 實戰(zhàn)》
          三、《CSS 禪意花園(修訂版)》
          四、《jQuery 基礎教程(第4版)》
          五、《JavaScript 權威指南(第6版)》
          六、《JavaScript高級程序設計(第3版)》
          七、《HTML5 秘籍》

          一、《CSS 設計指南(第 3 版)》

          作者:[英] Charles Wyke-Smith
          譯者:李松峰
          評分:8.8

          《圖靈程序設計叢書:CSS設計指南(第3版)》是一本面向初中級讀者的經(jīng)典設計指南。全書共分8章,前4章分別介紹了HTML標記和文檔結構、CSS工作原理、定位元素、字體和文本,對規(guī)則、聲明、層疊、特指度、選擇符等基本概念進行了詳細解讀。隨后4章介紹了頁面布局、界面組件,CSS3圓角、陰影、漸變、多背景等視覺設計技巧,最后還對如何實現(xiàn)最前沿的響應式設計進行了通俗易懂的演示。

          花三天讀了一遍,發(fā)現(xiàn)這是至今為止我看過的寫得最好的一本講 CSS 的書。這本書對新手來說,能循序漸進,漸入佳境;對老手來說,能系統(tǒng)梳理,打掃死角。會寫 CSS 不難,難的是寫聰明的 CSS。這本書從最基礎的知識點開始,直至擴展到響應式技術的應用,該說的都說透了,理論加實踐,非常棒,強烈推薦。

          二、《響應式 Web 設計 — HTML5 和 CSS3 實戰(zhàn)》

          作者:[英] Ben Frain
          譯者:王永強
          評分:7.3

          本書堪稱學習響應式 Web 設計的難得佳作。它不僅全面、細致、圖文并茂地介紹了響應式設計相關的技術,比如媒體查詢、流式布局、彈性媒體和彈性字體等,還把近幾年來 Web 設計領域公認的最佳設計理念有機地融入到了實例當中,比如移動先行(Mobile First)、漸進增強、平穩(wěn)退化、無障礙設計等。更加難得的是,本書以設計跨屏幕的網(wǎng)頁(響應式設計)為出發(fā)點,以點帶面,把如今 Web 設計領域兩大標準的最新版本 HTML5 和 CSS3 也納入其中,讀者在掌握先進設計方法的同時也能掌握最新的設計技術(比如使用新的 HTML5 結構化語義標記、嵌入媒體、響應式視頻,以及 CSS3 的新選擇器、特效、過渡、變形和動畫等),從而可以免除重復學習新標準之苦,讓自己一步跨入 Web 設計領域的最前沿。無論你想學習響應式 Web 設計,還是學習 HTML5 和 CSS3 的實際應用,本書都能滿足你的需要,是毋庸置疑的明智之選。

          說到底,響應式 Web 設計并非一門獨立的技術,而只是現(xiàn)有技術的一個組合應用。只要有一點 HTML 和 CSS 基礎的讀者都能順利地掌握它。對于中、高級的前端設計和開發(fā)人員,翻閱本書也有助于理清自己的知識脈絡,對這個新的設計理念獲得更全面、深入的理解和把握。

          三、《CSS 禪意花園(修訂版)》

          作者:[美] Dave Shea / Molly E. Holzschlag
          譯者:陳黎夫 / 山崺颋
          評分:7.8

          這本書的作者是世界著名的網(wǎng)站設計師,書中的范例來自網(wǎng)站設計領域最著名的網(wǎng)站——CSS Zen Garden(CSS 禪意花園)。全書分為兩個主要部分。第 1 章為第一部分,討論網(wǎng)站“CSS 禪意花園”及其最基本的主題,包含正確的標記結構和靈活性規(guī)劃等。第二部分包括 6 章,占據(jù)了書中的大部分篇幅。每章剖析“CSS 禪意花園”收錄的 6 件設計作品,這些作品圍繞一個主要的設計概念展開,如文字的使用等。通過探索 36 件設計作品面臨的挑戰(zhàn)和解決的問題,讀者將洞悉主要的 Web 設計原則以及它們運用的 CSS 布局技巧,理解 CSS 設計的精髓,恰當?shù)靥幚韴D形和字體來創(chuàng)建界面優(yōu)美、性能優(yōu)良且具有強大生命力的網(wǎng)站。

          嚴格意義上說,這不是一本教你怎樣使用 CSS 的書,更多傾向于 CSS 應用思想的剖析,換句話說就是怎樣更聰明的利用 CSS 對 Web 進行布局設計。如果上面那些是屬于 CSS 之“術”,那這本書應該屬于 CSS 之“道”,這也是書名中帶“禪意”的原由。

          四、《jQuery 基礎教程(第4版)》

          作者:[美] Jonathan Chaffer / Karl Swedberg
          譯者:李松峰
          評分:8.9

          本書由 jQuery API 網(wǎng)站維護者親自撰寫,第一版自 2008 上市以來,一版再版,累計重印 14 次,是國內首屈一指的 jQuery 經(jīng)典著作!作為最新升級版,本書涵蓋 jQuery 1.10.x 和 jQuery 2.0.x。本書前 6 章以通俗易懂的方式講解了 jQuery 的核心組件,包括 jQuery 的選擇符、事件、動畫、DOM 操作、Ajax 支持等。第7章和第8章介紹了 jQuery UI、jQuery Mobile 及利用 jQuery 強大的擴展能力開發(fā)自定義插件。隨后的幾章更加深入地探討了jQuery 的各種特性及一些高級技術。附錄 A 特別講解了 JavaScript 中閉包的概念,以及如何在 jQuery 中有效地使用閉包。附錄B講解了使用 QUnit 測試 JavaScript 代碼的必備知識。附錄 C 給出了 jQuery API 的快速參考。

          眼尖的小伙伴可能看出來了,這本書的譯者就是前面推薦的《CSS 設計指南(第 3 版)》的譯者,翻譯質量上成,這在技術類書籍里是十分難得的,如果你碰到那種翻譯的半生不熟的技術類書籍,那種痛苦真的是痛不如死,比如《眾妙之門》系列的翻譯。相信讀完這本書,你對 jQuery 的理解和應用都會再上一個臺階。

          五、《JavaScript 權威指南(第6版)》

          作者:David Flanagan
          譯者:淘寶前端團隊
          評分:8.9

          本書是程序員學習核心 JavaScript 語言和由 Web 瀏覽器定義的 JavaScript API 的指南和綜合參考手冊。第 6 版涵蓋 HTML 5 和 ECMAScript 5。很多章節(jié)完全重寫,以便與時俱進,緊跟當今的最佳 Web 開發(fā)實踐。本書新增章節(jié)描述了 jQuery 和服務器端 JavaScript。本書適合那些希望學習 Web 編程語言的初、中級程序員和希望精通 JavaScript 的 JavaScript 程序員閱讀。

          這是一本經(jīng)典的大部頭著作,放在床邊既可以隨手翻看,又可以困了當枕頭,開個玩笑。這本書的經(jīng)典就不用說了,雖然看起來望而生畏,但只要把它當做一本字典,就會減輕你你因為讀不完而產(chǎn)生內疚感的心理負擔。雖然有很好用的 jQuery 之類的 JS 庫,但理解 javascript 的運作原理以及相關應用方法還是很有必要的。

          六、《JavaScript高級程序設計(第3版)》

          作者:[美] Nicholas C. Zakas
          譯者:李松峰 / 曹力
          評分:9.3

          本書是 JavaScript 超級暢銷書的最新版。ECMAScript5 和 HTML5 在標準之爭中雙雙勝出,使大量專有實現(xiàn)和客戶端擴展正式進入規(guī)范,同時也為 JavaScript 增添了很多適應未來發(fā)展的新特性。本書這一版除增加5 章全新內容外,其他章節(jié)也有較大幅度的增補和修訂,新內容篇幅約占三分之一。全書從 JavaScript 語言實現(xiàn)的各個組成部分——語言核心、DOM、BOM、事件模型講起,深入淺出地探討了面向對象編程、Ajax 與 Comet 服務器端通信,HTML5 表單、媒體、Canvas(包括 WebGL)及Web Workers、地理定位、跨文檔傳遞消息、客戶端存儲(包括 IndexedDB)等新 API,還介紹了離線應用和與維護、性能、部署相關的最佳開發(fā)實踐。本書附錄展望了未來的 API 和ECMAScript Harmony 規(guī)范。

          七、《HTML5 秘籍》

          作者:Matthew MacDonald
          譯者:李松峰 / 朱巍
          評分:8.4

          《HTML5 秘籍》共包括四個部分,共12章。第一部分介紹了 HTML5 的發(fā)展歷程,利用 HTML5 重新構造網(wǎng)頁,以及 HTML5 的語義元素。第二部分介紹了 HTML5 對傳統(tǒng) Web 表單的翻新、HTML5 中的音頻與視頻、Canvas 繪圖技術、CSS3 等內容。第三部分介紹了數(shù)據(jù)存儲、離線應用、與 Web 服務器通信,以及 HTML5 與 JavaScript 技術的強大結合等內容。第四部分為附錄,簡單介紹了 CSS 和 JavaScript。

          古人云:書讀百遍,其義自見。話雖不錯,但對于技術類書籍僅僅是“讀”是遠遠不夠的,更多是需要動手“做”,系統(tǒng)的理論知識加上一雙巧手才能把代碼化腐朽為神奇,創(chuàng)作出一個個精彩的 Web 作品。希望以上這些上乘之作能夠帶你進入奇妙的 Web 前端世界,用你的雙手給更多的人帶來更好的頁面瀏覽和交互體驗。與君共勉。

          如果您也有好的 WEB 前端技術類電子書推薦,歡迎留言推薦。

          大且廣受歡迎的編程語言 JavaScript 具有龐大的內置函數(shù)庫,可用于執(zhí)行各種任務。


          本文涵蓋了每個開發(fā)人員都應該知道的 15 個 JavaScript 特性。無論您是新手還是經(jīng)驗豐富的開發(fā)人員,這些功能都會派上用場。那么,讓我們來討論一下這 15 個重要的 JavaScript 特性。

          1.重復一個字符串

          要在 JavaScript中多次重復一個字符串,您可以使用普通方法或速記方法。

          速寫:

          您可以使用循環(huán)多次重復一個字符串。

          以下是如何使用for循環(huán)執(zhí)行此操作的示例:

          function  repeatString ( string , num ) {
           let result='' ;
           for ( let i=0 ; i < num; i++) {
             結果 +=字符串;
          }
           返回結果;
          }
          
          console.log ( repeatString ( '你好' , 5 ));  
          
          // 輸出:"HelloHelloHelloHelloHello"

          速記:

          在速記方法中,我們使用該repeat()方法多次重復一個字符串。

          repeat()僅支持現(xiàn)代瀏覽器,因此您必須使用普通方法來支持舊瀏覽器。

          例子:

          console.log('你好'。重復(5));  
          
          // 輸出:"HelloHelloHelloHelloHello"

          2.數(shù)組的組合

          在 JavaScript 中,您可以使用普通方法和快捷方法來合并兩個或多個數(shù)組。

          速寫:

          以下是如何使用for循環(huán)執(zhí)行此操作的示例:

          讓array1=[ 10 , 20 , 30 ];
          讓array2=[ 40 , 50 , 60 ];
          讓mergedArray=[];
          
          for ( let i=0 ; i < array1.length ; i++) {
           mergedArray. 推(array1[i]);
          }
          
          for ( let i=0 ; i < array2.length ; i++) {
           mergedArray. 推(array2[i]);
          }
          
          控制臺。日志(合并數(shù)組);  
          
          // 輸出:[10, 20, 30, 40, 50, 60]

          速記:

          對于速記,您可以使用concat()、...reduce()方法。concat()and方法通過...將第二個數(shù)組的元素附加到第一個數(shù)組的末尾來組合兩個或多個數(shù)組的元素。

          以下是如何使用contact(),...方法的示例:

          // concat()
          讓array1=[ 10 , 20 , 30 ];
          讓array2=[ 40 , 50 , 60 ];
          讓mergedArray=array1。連接(數(shù)組 2);
          
          控制臺。日志(合并數(shù)組);  // 輸出:[10, 20, 30, 40, 50, 60]
          
          
          // ...
          let array1=[ 10 , 20 , 30 ];
          讓array2=[ 40 , 50 , 60 ];
          讓mergedArray=[...array1, ...array2];
          
          控制臺。日志(合并數(shù)組);  // 輸出:[10, 20, 30, 40, 50, 60]

          如果您想以不同的方式組合數(shù)組,可以使用reduce()方法。

          例子:

          // reduce()
          let array1=[ 10 , 20 , 30 ];
          讓array2=[ 40 , 50 , 60 ];
          讓mergedArray=array1。reduce ( ( acc, val )=> acc.concat (val), array2);
          
          控制臺。日志(合并數(shù)組);  // 輸出:[40, 50, 60, 10, 20, 30]

          3.函數(shù)接受的參數(shù)

          您可以通過 3 種不同的方式找到函數(shù)接受的參數(shù)數(shù)量。

          方法一:

          根據(jù)函數(shù)定義中命名參數(shù)的數(shù)量,函數(shù)的length屬性返回函數(shù)期望接收的參數(shù)數(shù)量。

          function  myFunction ( a, b, c ) {
           // 函數(shù)體
          }
          
          console . 日志(myFunction.length );  // 輸出:3

          方法二:

          傳遞給函數(shù)的參數(shù)存儲在一個名為 的對象中argument,它看起來像一個數(shù)組。使用length參數(shù)對象的屬性,您可以找出有多少參數(shù)傳遞給函數(shù)。

          由于對象arguments不是真正的數(shù)組,因此并非所有數(shù)組方法都可以訪問。如果您希望在對象上使用數(shù)組方法,請使用該Array.from()函數(shù)將arguments對象轉換為實際數(shù)組。

          函數(shù) myFunction(a, b, c) {myFunction (a, b, c) {
           console .log (arguments.length);  // 輸出:3
          }
          
          myFunction ( 1 , 2 , 3 );

          您不能使用該arguments對象來計算函數(shù)期望從函數(shù)外部獲得多少參數(shù),因為它只能在函數(shù)內部訪問。length然后需要使用該屬性,就像在方法 1 中一樣。

          4. JavaScript 中的循環(huán)

          JavaScript 提供了幾種類型的循環(huán)來重復重復代碼塊。

          一些常用的循環(huán)示例是:

          for循環(huán)

          自增或自減表達式、循環(huán)條件和 for 循環(huán)的變量是它的三個主要部分。只要條件為真,循環(huán)就會一直運行。

          從 1 計數(shù)到 5 的 for 循環(huán)示例:

          for (讓i=1 ; i <=5 ; i++) {
           console.log(一);
          }

          輸出:

          1
          2
          3
          4
          5

          for-in 循環(huán)

          您可以使用循環(huán)遍歷對象的屬性for-in

          在此示例中,我們使用循環(huán)遍歷對象的屬性for-in

          例子:

          讓對象={a: 1, b: 2, c: 3}; 對象={a: 1 , b: 2 , c: 3 };
          for (let property  in  object ) {
           console.log( property + ": " + object [ property ]);
          }

          輸出:

          一個:1
          乙:2
          丙:3

          for循環(huán)

          如果可迭代對象是數(shù)組或字符串,您可以使用for-of循環(huán)來迭代這些值。

          for-of使用循環(huán)迭代元素數(shù)組:

          讓數(shù)組=[ 1 , 2 , 3 ];
          for ( let數(shù)組元素) {
           console . 日志(元素);
          }

          輸出:

          1
          2
          3

          5. 字符串轉數(shù)組

          您可以使用該split方法在 JavaScript 中將字符串轉換為數(shù)組。此方法使用分隔符字符串或正則表達式將字符串拆分為子字符串。

          以下示例顯示如何使用 方法將字符串轉換為數(shù)組split

          let string="apple,banana,orange"; string="蘋果、香蕉、橘子" ;
          let array=string .split( "," );
          安慰。日志(數(shù)組);// 打印 [ "apple" , "banana" , "orange" ]

          使用速記方法,您可以獲得相同的結果:

          let string="apple,banana,orange"; string="蘋果、香蕉、橘子" ; 
          let array=[... string .split( "," )]; 
          安慰。日志(數(shù)組);// 打印 [ "apple" , "banana" , "orange" ]

          您可以使用for loop. 使用此方法,您可以通過將每個字符推入其自己的數(shù)組來將字符串轉換為數(shù)組。

          一個例子是:

          let string="apple,banana,orange"; string="蘋果、香蕉、橘子" ;
          讓數(shù)組=[];
          for (let i=0 ; i < string .length; i++) {
           array.push( string [i]);
          }
          控制臺。日志(數(shù)組);// 打印 [ "a" , "p" , "p" , "l" , "e" , "," , "b" , "a" , "n" , "a" , "n" , "a " , ", ", "n" , "g" , "e" ]

          在此方法中,不是將字符串拆分為子字符串,而是字符串的每個字符都是數(shù)組中的一個單獨元素。split 方法允許您根據(jù)分隔符分隔字符串,如前兩個示例所示。

          6. 數(shù)組中的最大值和最小值

          您可以使用下面的 JavaScript 示例查找數(shù)組中的最大數(shù)和最小數(shù)。

          速寫:

          // 找出數(shù)組中的最大數(shù)
          const  array=[ 3 , 7 , 1 , 9 , 2 , 5 ];
          讓 maxNumber=array [ 0 ];
          for (let i=1 ; i < array .length; i++) {
           if ( array [i] > maxNumber) {
             maxNumber=array [i]; }
          }
          }
          控制臺。日志(最大數(shù)量);  // 輸出:9
          // 找到數(shù)組中的最小數(shù)
          const  array=[ 3 , 7 , 1 , 9 , 2 , 5 ];
          讓 minNumber=array [ 0 ];
          for (let i=1 ; i < array .length; i++) {
           if ( array [i] < minNumber) {
             minNumber=array [i]; }
          }
          }
          控制臺。日志(最小數(shù)量);  // 輸出:1

          使用Math.max()and Math.min(),您可以輕松計算最大值或最小值:

          // 找出數(shù)組中的最大數(shù)
          const array=[ 3 , 7 , 1 , 9 , 2 , 5 ];
          常數(shù)maxNumber=數(shù)學。最大值(...數(shù)組);
          控制臺。日志(最大數(shù)量);  // 輸出:9
          // 找到數(shù)組中的最小數(shù)
          const array=[ 3 , 7 , 1 , 9 , 2 , 5 ];
          const minNumber=數(shù)學。分鐘(...數(shù)組);
          控制臺。日志(最小數(shù)量);  // 輸出:1

          7.將字符串轉換為數(shù)字

          要在 JavaScript 中將字符串轉換為數(shù)字,有幾種方法。

          使用parseInt()parseFloat()功能:

          // 將字符串轉換為整數(shù)
          const num1="42" ;
          const num2=parseInt (num1);  // num2 現(xiàn)在是值為 42 的數(shù)字類型
          
          // 將字符串轉換為浮點數(shù)
          const num3="3.14" ;
          const num4=parseFloat (num3);  // num4 現(xiàn)在是數(shù)字類型,值為 3.14

          使用一元加運算符(+)

          // 將字符串轉換為數(shù)字
          const num1="42" ;
          常量num2=+num1;  // num2 現(xiàn)在是值為 42 的數(shù)字類型
          
          // 將字符串轉換為負數(shù)
          const num3="-42" ;
          常量num4=+num3;  // num4 現(xiàn)在是數(shù)字類型,值為 -42

          8. 為多個變量賦值

          JavaScript 提供了普通函數(shù)和速記函數(shù)來為多個變量賦值:

          使用單獨的賦值語句方法:

          讓x;
          讓你;
          讓z;
          
          x=1;
          y=2;
          z=3;

          解構賦值簡寫法:

          讓x, y, z;
          
          [ x, y, z ]=[ 1 , 2 , 3 ];

          解構賦值也可用于從對象分配變量:

          const obj={ a : 1 , b : 2 , c : 3 };
          設a、b、c;
          ({a, b, c}=對象);

          9.指數(shù)冪

          在 JavaScript 中有幾種方法可以計算一個數(shù)的指數(shù)冪。這里有些例子:

          使用for循環(huán):

          function  power ( base, exponent ) {
           讓結果=1 ;
           for ( let i=0 ; i < exponent; i++) {
             結果 *=base;
          }
           返回結果;
          }
          控制臺。日志(功率( 2 , 3 ));  // 輸出:8

          使用Math.pow()功能:

          函數(shù) 冪(基數(shù),指數(shù)){
           返回 數(shù)學。pow(基數(shù),指數(shù));
          }
          控制臺。日志(功率( 2 , 3 ));  // 輸出:8

          此外,您還可以使用求冪運算符 ( **) 求出數(shù)字的指數(shù)冪:

          常量 基礎=2 ;
          常量指數(shù)=3 ;
          常量結果=基數(shù)** 指數(shù);  // 結果現(xiàn)在是 8

          10.雙位非運算符(~~)

          在 ( ~~) 運算符的幫助下,您可以將數(shù)字四舍五入為最接近的整數(shù)。

          例子:

          const num=3.14 ;
          const roundedNum=~~num;  // roundedNum 現(xiàn)在是 3

          您可以使用 ( ~~) 運算符代替Math.floor().

          const num=3.14 ;
          const roundedNum=數(shù)學。樓層(數(shù)量);  // roundedNum 現(xiàn)在是 3

          您還可以使用 ( ~~) 將非整數(shù)值轉換為整數(shù)。

          例如:

          const num="3.14" ;
          const intNum=~~num;  // intNum 現(xiàn)在是 3

          這類似于使用parseInt()函數(shù):

          const num="3.14" ;
          const intNum=parseInt (num);  // intNum 現(xiàn)在是 3

          11.函數(shù)參數(shù)的默認值

          在 JavaScript 中,您可以通過不同的方式為函數(shù)參數(shù)分配默認值。

          速寫:

          函數(shù) 問候(名稱){
           名稱=名稱|| '匿名' ;
           控制臺。日志(`你好,${name}!`);
          }

          在上面的示例中,name參數(shù)的默認值為'Anonymous'name如果調用函數(shù)時沒有為參數(shù)傳遞值greet,它將使用默認值。

          速記:

          功能 問候(名稱='匿名'){
           控制臺。日志(`你好,${name}!`);
          }

          在此示例中,參數(shù)的默認值是使用語法name在函數(shù)定義中直接指定的。如果調用函數(shù)時沒有為參數(shù)=傳遞值,它將使用默認值。name``greet

          12. 三元運算符

          它也被稱為條件運算符或三元條件運算符。

          JavaScript 中三元運算符的語法是:

          健康)狀況 ?value_if_true : value_if_false;

          如果別的

          您可以使用 if-else 語句獲得與三元運算符相同的結果。

          例子:

          讓x=10 ;
          讓y=20 ;
          
          如果(x > y) {
           最大值=x;
          } else {
           最大值=y;
          }
          控制臺。日志(最大值);  // 輸出 20

          在下面的示例中,我們將使用 JavaScript 三元運算符:

          讓x=10 ;
          讓y=20 ;
          讓maxValue=(x > y) ? x:y;
          控制臺。日志(最大值);  // 輸出 20

          在此示例中,條件x > y被評估為false,因此 的值y被分配給maxValue。如果條件為truex則將分配給的值maxValue

          三元運算符有助于在單行代碼中表達條件邏輯,盡管它比 if-else 形式更難閱讀和理解。

          當條件邏輯變得更加復雜時,使用三元運算符是個好主意。

          13.交換兩個變量

          在 JavaScript 中,要交換兩個變量的值,可以使用不同的方法。

          這里有些例子:

          速寫:

          讓x=1;
          讓y=2;
          
          讓溫度=x;
          x=y;
          y=溫度;

          在上面的示例中,我們創(chuàng)建了一個臨時變量(temp)來存儲 x 的值,然后將 x 的值賦給 y 的值,將 y 的值賦給 temp。

          讓x=1 ;
          讓y=2 ;
          [ x, y ]=[y, x];

          在此示例中,使用解構賦值方法交換 x 和 y 的值。您可以使用解構賦值將變量分配給數(shù)組或對象的元素。無需臨時變量,它可以成為交換值的便捷方式。

          如果使用任何一種方法,x 將為 2,y 將為 1。

          14.檢查多個條件

          有幾種不同的方法可以在 JavaScript 中檢查多個條件。

          這里有幾個選項:

          1. 使用**&&**運營商:

          此運算符允許您檢查多個條件是否為真。

          例如:

          if (x > 0 && y < 10) {0 && y < 10 ) {
           // 執(zhí)行一些代碼
          }

          如果兩個條件(x > 0 和 y < 10)都為真,這將只執(zhí)行 if 語句中的代碼。

          2. 使用**||**運營商:

          此運算符允許您檢查多個條件中是否至少有一個為真。

          例如:

          if (x===1 || x===2 || x===3) {1 || x===2 || x===3 ) {
           // 執(zhí)行一些代碼
          }

          如果 x 等于 1、2 或 3,這將執(zhí)行 if 語句中的代碼。

          3.使用switch語句:

          這允許您檢查多個條件并根據(jù)給定表達式的值執(zhí)行不同的代碼塊。例如:

          switch (x) {
           case  1 :
             // 執(zhí)行一些代碼
             break ;
           case  2 :
             // 執(zhí)行一些代碼
             break ;
           case  3 :
             // 執(zhí)行一些代碼
             break ;
           default :
             // 執(zhí)行一些代碼
          }

          這將執(zhí)行 case 塊內匹配 x 值的代碼。如果所有情況都不匹配,則將執(zhí)行 default 塊內的代碼。

          請務必注意,&&and||運算符具有特定的優(yōu)先順序,因此您可能需要使用括號以您想要的方式對條件進行分組。

          4.數(shù)組.prototype.include()

          您可以使用 Array.prototype.include() 方法檢查 JavaScript 中的多個條件。

          例子:

          常數(shù)值=2 ;
          if ([ 1 , 'one ', 2 , 'two '] .includes (value)) {
           控制臺。log ( '該值為1、"one"、2或"two" ');
          } else {
           控制臺。log ( '該值不是1、"one"、2或"two" ');
          }
          // 輸出:值為 1、“one”、2、

          Array.prototype.include() the函數(shù)檢查值是否存在。如果存在該值,則 if 塊內的代碼將在上面的示例中運行。如果找不到該值,將執(zhí)行 else 塊中的代碼。

          15. 刪除屬性

          delete 運算符允許您從對象中刪除多個屬性。

          以下面為例:

          讓obj={
           prop1 : 'value1' ,
           prop2 : 'value2' ,
           prop3 : 'value3' ,
           prop4 : 'value4'
          };
          
          刪除對象。支柱1;
          刪除對象。支柱 3 ;
          
          控制臺。日志(對象);  // 輸出 { prop2: 'value2', prop4: 'value4' }

          或者,您可以使用該Object.assign()方法創(chuàng)建一個刪除了所需屬性的新對象。

          例子:

          讓obj={
           prop1 : 'value1' ,
           prop2 : 'value2' ,
           prop3 : 'value3' ,
           prop4 : 'value4'
          };
          
          讓newObj=對象。分配({},對象);
          刪除新對象。支柱1;
          刪除新對象。支柱 3 ;
          
          控制臺。日志(新對象);  // 輸出 { prop2: 'value2', prop4: 'value4' }

          在現(xiàn)代 JavaScript(ES6 及更高版本)中,您可以使用Object.entries()Object.fromEntries()方法從對象中刪除多個屬性。

          例子:

          讓obj={
           prop1 : 'value1' ,
           prop2 : 'value2' ,
           prop3 : 'value3' ,
           prop4 : 'value4'
          };
          
          讓newObj=對象。fromEntries (
           Object . entries (obj). filter ( ( [key] )=> key !=='prop1' && key !=='prop3' )
          );
          
          控制臺。日志(新對象);  // 輸出 { prop2: 'value2', prop4: 'value4' }

          如果對你有幫助,記得點贊支持哦,目前我們的系統(tǒng)班正在講解JavaScript正則表達式,這個課程講完系統(tǒng)班的JavaScript階段就算完結了,正式開始進入ES6階段了,這幾個月我們在JavaScript課程中融入了大量的面試題、算法以及底層原理知識,目的就是為了幫助大家夯實基礎,查漏補缺,有 扎實的JavaScript基礎,對于學到后面階段更加有幫助!這也是2023年通向職業(yè)道路,面試求職必須要懂得的技術能力!感興趣可以聯(lián)系我參與!

          為了更好的讓大家認識到JavaScript的精髓,我們在三十天計劃群里推出了幾節(jié)非常重要的JavaScript課程體系,而且每個系列知識點都保障是完整的。感興趣可以通過下方的練習方式參與課程哦 。如果你正在學習JavaScript,我們已經(jīng)在三十天計劃中完成了4個綜合項目實戰(zhàn),那不妨可以聽下這個課程體系,三十天計劃群里還提供了算法、數(shù)組等知識體系!

          前端工程師成長方法

          更多完整 JavaScript 課程體系在我們的系統(tǒng)班里有完整的呈現(xiàn),包含了 JavaScript 基礎篇、重點、算法、原理、面試題、實戰(zhàn)案例講解!同時也為你提供了前端高級工程師成長體系!(詳細看下圖內容)

          如果需要深度學習的同學可以聯(lián)系助理老師了解詳細的課程以及課程的報名方式!(不定期會推出活動,有大額優(yōu)惠券推出,活動詳情聯(lián)系助理老師了解即可?。┤绻悴砰_始學習前端,那么可以先學習我們的三十天計劃(零基礎的同學報名系統(tǒng)班同學可以和老師溝通制定學習計劃,可以得到更快的成長?。?/span>

          為幫助到一部分同學不走彎路,真正達到一線互聯(lián)網(wǎng)大廠前端項目研發(fā)要求,首次實力寵粉,打造了《30天挑戰(zhàn)學習計劃》,內容如下:

          HTML/HTML5,CSS/CSS3,JavaScript,真實企業(yè)項目開發(fā),云服務器部署上線,從入門到精通

          • PC端項目開發(fā)(1個)
          • 移動WebApp開發(fā)(2個)
          • 多端響應式開發(fā)(1個)


          共4大完整的項目開發(fā) !一行一行代碼帶領實踐開發(fā),實際企業(yè)開發(fā)怎么做我們就是怎么做。從學習一開始就進入工作狀態(tài),省得浪費時間。

          從學習一開始就同步使用 Git 進行項目代碼的版本的管理,Markdown 記錄學習筆記,包括真實大廠項目的開發(fā)標準和設計規(guī)范,命名規(guī)范,項目代碼規(guī)范,SEO優(yōu)化規(guī)范

          從藍湖UI設計稿 到 PC端,移動端,多端響應式開發(fā)項目開發(fā)

          • 真機調試,云服務部署上線;
          • Linux環(huán)境下 的 Nginx 部署,Nginx 性能優(yōu)化;
          • Gzip 壓縮,HTTPS 加密協(xié)議,域名服務器備案,解析;
          • 企業(yè)項目域名跳轉的終極解決方案,多網(wǎng)站、多系統(tǒng)部署;
          • 使用 使用 Git 在線項目部署;

          這些內容在《30天挑戰(zhàn)學習計劃》中每一個細節(jié)都有講到,包含視頻+圖文教程+項目資料素材等。只為實力寵粉,真正一次掌握企業(yè)項目開發(fā)必備技能,不走彎路 !

          過程中【不涉及】任何費用和利益,非誠勿擾 。

          如果你沒有添加助理老師微信,可以添加下方微信,說明要參加30天挑戰(zhàn)學習計劃,來自!老師會邀請你進入學習,并給你發(fā)放相關資料。

          30 天挑戰(zhàn)學習計劃 Web 前端從入門到實戰(zhàn) | arry老師的博客-艾編程


          主站蜘蛛池模板: 极品尤物一区二区三区| 成人免费视频一区| 精品一区精品二区| 久久久精品一区二区三区| 亚洲日韩国产欧美一区二区三区 | 无码人妻精品一区二区三区99性 | 精品一区二区三区AV天堂| 无码乱人伦一区二区亚洲| 一区二区三区在线播放视频| 日韩中文字幕精品免费一区| 亚洲日韩国产精品第一页一区| 加勒比精品久久一区二区三区 | 日本一区二区在线播放| 国产精品女同一区二区久久| 毛片一区二区三区无码| 久久er99热精品一区二区| 亲子乱av一区二区三区| 日韩av片无码一区二区三区不卡 | 亚洲AV无码一区二区三区国产| 中文字幕av人妻少妇一区二区| 久久4k岛国高清一区二区| 精品伦精品一区二区三区视频 | 在线视频精品一区| 亚洲字幕AV一区二区三区四区| 97av麻豆蜜桃一区二区| 无码精品人妻一区二区三区人妻斩 | 国产无吗一区二区三区在线欢| 日本一区二区三区免费高清| 国产日本亚洲一区二区三区| 中文字幕一区一区三区| 午夜天堂一区人妻| 一区二区视频在线观看| 无码av免费一区二区三区试看| 日韩视频一区二区三区| 精品一区二区在线观看| 久久一本一区二区三区| 一区二区三区在线|欧| 少妇激情av一区二区| 中文字幕一区二区三区久久网站| 88国产精品视频一区二区三区| 麻豆aⅴ精品无码一区二区|