AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當前位置:首頁 > 科技  > 軟件

前端的十個問題,你知道幾個?

來源: 責編: 時間:2023-12-15 17:17:00 273觀看
導讀01、null和undefinedundefined是全局對象的一個屬性,當一個變量沒有賦值或者訪問一個對象不存在的屬性,這時候都是undefined。null:表示是一個空對象。在需要釋放一個對象的時候,直接賦值為null即可。02、箭頭函數箭頭函

01、null和undefined

undefined是全局對象的一個屬性,當一個變量沒有賦值或者訪問一個對象不存在的屬性,這時候都是undefined。Tct28資訊網——每日最新資訊28at.com

null:表示是一個空對象。在需要釋放一個對象的時候,直接賦值為null即可。Tct28資訊網——每日最新資訊28at.com

02、箭頭函數

箭頭函數是ES6新增的,簡化函數的定義。箭頭函數沒有自身的this,所以this是從外部獲取的,也就是繼承了外部的執行上下文。Tct28資訊網——每日最新資訊28at.com

箭頭函數不能作為構造函數,如果通過call()或者apply()調用箭頭函數的時候,不需要綁定this,直接傳入參數即可。Tct28資訊網——每日最新資訊28at.com

03、call、apply和bind的作用

bind、call和apply都是改變函數this的指向。 bind在改變this的時候,返回的是一個改變執行上下文的函數,不會立即執行。 call和apply在改變this指向同時也執行該函數。 bind只有一個參數,call和apply可接收多個參數,第一個參數是this的指向。apply的第二參數是一個數組。Tct28資訊網——每日最新資訊28at.com

04、函數的this

this是函數的執行上下文,分為全局執行上下文和函數執行上下文。Tct28資訊網——每日最新資訊28at.com

this在嚴格模式下,指向的是undefined,非嚴格模式下默認指向window。Tct28資訊網——每日最新資訊28at.com

函數的this,在函數被調用的時候,指向的是函數的調用者,也就是誰調用,就指向誰。Tct28資訊網——每日最新資訊28at.com

如果通過new 構造函數創建一個新的對象,那么構造函數的中的this指向新對象本身。Tct28資訊網——每日最新資訊28at.com

普通函數不繼承this,箭頭函數沒有this,它是繼承外部的this。Tct28資訊網——每日最新資訊28at.com

05、變量提升

變量提升是指js的變量和函數在編譯的時候提升到最前面。Tct28資訊網——每日最新資訊28at.com

造成變量提升的現象,是因為使用var關鍵字聲明的變量,變量提升的時候,只有聲明在提升,變量賦值并沒有提升,在變量初始化之前訪問該變量,就會返回undefined。使用let或者const聲明變量,就形成暫時性死區,在let或者const聲明變量之前訪問變量會報錯。Tct28資訊網——每日最新資訊28at.com

06、map和forEach的區別

map有返回值,可以開辟新的空間,return返回一個長度和原數組長度一樣的新數組。Tct28資訊網——每日最新資訊28at.com

forEach函數沒有返回值,返回的undefined。Tct28資訊網——每日最新資訊28at.com

map的處理速度比forEach快,返回新數組,這樣方便鏈式調用其他數組方法,比如filter、reduce等等。Tct28資訊網——每日最新資訊28at.com

07、怎么理解事件循環、微任務和宏任務

瀏覽器的事件循環是執行js代碼的時候,遇見同步任務,直接推進調用棧中執行,遇到異步任務時候,將異步任務掛起,等到異步任務有返回之后再推到任務隊列中。Tct28資訊網——每日最新資訊28at.com

當調用棧中所有的同步任務執行完成,將任務隊列中的任務按照順序執行。重復執行這一系列的行為就是事件循環。Tct28資訊網——每日最新資訊28at.com

異步任務又分為宏任務和微任務。宏任務就是任務隊列中的任務,每一個宏任務中包含一個微任務隊列;Tct28資訊網——每日最新資訊28at.com

微任務:就是等宏任務中的主要功能執行完成后,渲染引擎并沒有立即執行下一個宏任務,而是執行當前宏任務中的微任務。Tct28資訊網——每日最新資訊28at.com

宏任務包含:script標簽內的代碼、定時器、Ajax請求Tct28資訊網——每日最新資訊28at.com

微任務:PromiseTct28資訊網——每日最新資訊28at.com

08、跨站點請求偽造CSRF

攻擊者盜用用戶的身份,以用戶的身份發起惡意請求。但是對于服務器來說,這個請求是合理的。Tct28資訊網——每日最新資訊28at.com

預防CSR攻擊方法:Tct28資訊網——每日最新資訊28at.com

  1. 使用驗證碼,強烈要求用戶和應用進行交互
  2. 在http中referer字段,檢查是否是從正確的域名訪問過來,它記錄了http請求的來源地址
  3. 使用token驗證,在http請求頭中添加token字段,在服務器端設置一個攔截器來驗證token,如果token無效,那么拒絕訪問

09、XSS攻擊

XSS攻擊是腳本攻擊,攻擊者通過向web頁面插入script代碼,在用戶瀏覽這個頁面時候,執行script的腳本代碼,達到攻擊的目的。Tct28資訊網——每日最新資訊28at.com

預防:對數據進行嚴格的輸出編碼,比如URL編碼、css編碼、JavaScript編碼。Tct28資訊網——每日最新資訊28at.com

10、瀏覽器如何渲染頁面的

瀏覽器從服務器獲取到html后,將html轉化為DOM樹,再將css樣式轉化為對應的stylesheet,根據DOM樹和stylesheet繪制成頁面。Tct28資訊網——每日最新資訊28at.com

本文鏈接:http://www.tebozhan.com/showinfo-26-46467-0.html前端的十個問題,你知道幾個?

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 解鎖RocketMQ秘籍:如何保障消息順序性?

下一篇: Python字符串的匹配算法

標簽:
  • 熱門焦點
  • .NET 程序的 GDI 句柄泄露的再反思

    一、背景1. 講故事上個月我寫過一篇 如何洞察 C# 程序的 GDI 句柄泄露 文章,當時用的是 GDIView + WinDbg 把問題搞定,前者用來定位泄露資源,后者用來定位泄露代碼,后面有朋友反
  • Python異步IO編程的進程/線程通信實現

    這篇文章再講3種方式,同時講4中進程間通信的方式一、 Python 中線程間通信的實現方式共享變量共享變量是多個線程可以共同訪問的變量。在Python中,可以使用threading模塊中的L
  • JVM優化:實戰OutOfMemoryError異常

    一、Java堆溢出堆內存中主要存放對象、數組等,只要不斷地創建這些對象,并且保證 GC Roots 到對象之間有可達路徑來避免垃 圾收集回收機制清除這些對象,當這些對象所占空間超過
  • 雅柏威士忌多款單品價格大跌,泥煤頂流也不香了?

    來源 | 烈酒商業觀察編 | 肖海林今年以來,威士忌市場開始出現了降溫跡象,越來越多不斷暴漲的網紅威士忌也開始悄然回歸市場理性。近日,LVMH集團旗下蘇格蘭威士忌品牌雅柏(Ardbeg
  • 共享單車的故事講到哪了?

    來源丨海克財經與共享充電寶相差不多,共享單車已很久沒有被國內熱點新聞關照到了。除了一再漲價和用戶直呼用不起了。近日多家媒體再發報道稱,成都、天津、鄭州等地多個共享單
  • 品牌洞察丨服務本地,美團直播成效幾何?

    來源:17PR7月11日,美團App首頁推薦位出現“美團直播”的固定入口。在直播聚合頁面,外賣“神槍手”直播間、美團旅行直播間、美團買菜直播間等均已上線,同時
  • ESG的面子與里子

    來源 | 光子星球撰文 | 吳坤諺編輯 | 吳先之三伏大幕拉起,各地高溫預警不絕,但處于厄爾尼諾大“烤”之下的除了眾生,還有各大企業發布的ESG報告。ESG是“環境保
  • 2299元起!iQOO Pad明晚首銷:性能最強天璣平板

    5月23日,iQOO如期舉行了新品發布會,除了首發安卓最強旗艦處理器的iQOO Neo8系列新機外,還在發布會上推出了旗下首款平板電腦——iQOO Pad,其最大的賣點
  • 英特爾Xe HPG游戲顯卡:擁有512EU,單風扇版本

    據10 月 30 日外媒 TheVerge 消息報道,英特爾 Xe HPG Arc Alchemist 的正面實被曝光,不僅擁有 512 EU 版顯卡,還擁有 128EU 的單風扇版本。另外,這款顯卡 PCB
Top