10個非常基礎的Javascript面試問題

      網(wǎng)友投稿 816 2022-05-29

      本文特別適合正在尋找javaScript開發(fā)工作的初學者。我搜索了許多Javascript面試問題,這10個對我來說似乎最重要。讓我們深入研究一下。

      1.什么是Javascript?

      Javascript是一種用于Web開發(fā)的編程語言。JavaScript在網(wǎng)絡的客戶端上運行。

      根據(jù)MDN,JavaScript(通??s寫為JS)是一種輕量級的,解釋性的,面向對象的語言,具有一流的功能,并且最著名的是Web頁面的腳本語言,但它也用于許多非瀏覽器環(huán)境中。它是一種基于原型的多范式腳本語言,它是動態(tài)的,并支持面向對象,命令式和函數(shù)式編程樣式。

      2.什么是DOM

      DOM代表文檔對象模型。加載網(wǎng)頁后,瀏覽器會使用HTML和CSS文件創(chuàng)建一個DOM。DOM由節(jié)點和元素表示。您可以使用javascript處理DOM。它是一個樹狀結構。

      3. JS代碼如何執(zhí)行

      要回答的問題有點大。但是我們可以簡單地說一下。Javascript在瀏覽器上運行。幾乎每個瀏覽器都有一個JavaScript引擎。V8是其中最受歡迎的。Chrome使用V8引擎。另一方面,F(xiàn)irefox使用Spider-Monkey引擎。

      4. ==和===之間的區(qū)別

      如果我這么簡單地說,==僅檢查兩個值是否相同。它不檢查這些值的類型。查看以下代碼:

      if(2=="2"){ console.log("true") } else { console.log("false") }

      1

      2

      3

      4

      5

      上面的代碼將記錄為true。因為它將2和“ 2”視為相等,因為它不檢查類型。

      相反,===同時檢查類型和質量。例如:

      if(2==="2"){ console.log("true") } else { console.log("false") }

      1

      2

      3

      4

      5

      這將記錄為false。因為2和“ 2”的值相等,但是它們的類型不同。

      5.Null(空值)與Undefined(未定義)

      通常,null表示空值和不存在的值,而undefined表示已聲明但尚未定義的值。盡管您也可以顯式地將undefined設置為變量。

      var n; console.log(typeof(n)); // undefined var n = null; console.log(typeof(n)); // object

      1

      2

      3

      4

      5

      有趣的是JS中的對象類型為null。

      6. Var vs Let vs Const

      在ES6之前,var是聲明變量的唯一方法。但是現(xiàn)在我們有更多選擇。

      有一個術語作為范圍。范圍是指可以使用這些變量的位置。var聲明是全局范圍的或函數(shù)/局部范圍的。

      可以掛起Var,我們將在幾秒鐘后討論。但是,現(xiàn)在讓let對于變量聲明更可取。當不需要稍后在代碼中更改變量時,可以使用const。為了獲得兩者之間的區(qū)別,您可以閱讀下面的文章,我認為它非常有用。

      7.變量提升(Hoisting)

      在javascript中,可以在聲明變量之前使用變量。物理上移到代碼頂部的變量和函數(shù)聲明的概念稱為變量提升。

      console.log(num); // Returns undefined, as only declaration was hoisted, no initialization has happened at this stage var num; // Declaration num = 6;

      1

      2

      3

      那么,let和const變量是否不會被懸掛?答案要復雜得多。所有聲明(函數(shù),var,let,const和class)都在JavaScript中吊起,而var聲明使用undefined初始化,但是let和const聲明保持未初始化。

      8.全局變量與局部變量

      在javascript中,范圍分為兩種方式。全局和局部。

      10個非?;A的Javascript面試問題

      在函數(shù)中聲明的變量稱為局部作用域。該變量不能在函數(shù)外部訪問。相反,在函數(shù)外部聲明的變量稱為全局范圍。可以在函數(shù)內(nèi)部訪問它。

      var genre= "superhero" //global scope // code here can't use superhero but genre function myFunction() { var superhero = "Batman"; // local scope // code here CAN use superhero and genre }

      1

      2

      3

      4

      5

      6

      9.閉包(Closure)

      閉包使我們可以從內(nèi)部函數(shù)訪問外部函數(shù)的范圍??梢酝ㄟ^從一個函數(shù)返回另一個函數(shù)來創(chuàng)建它。它為每個實例創(chuàng)建一個封閉的環(huán)境。例如:

      function sum(x) { return function(y) { return x + y; }; } var add5 = sum(5); var add10 = sum(10); console.log(add5(6)); // 11 console.log(add10(6)); // 16

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      11

      這里的add5和add10都是閉包。它們共享相同的定義,但存儲不同的環(huán)境。

      10.回調函數(shù)

      根據(jù)MDN,回調函數(shù)是一個作為參數(shù)傳遞給另一個函數(shù)的函數(shù),然后在外部函數(shù)內(nèi)部調用該回調函數(shù)以完成某種例程或操作。例如

      function greeting(name) { console.log('Hello ' + name); } function greetEmployee(name,callback) { callback(name); } greetEmployee("Dwight",greeting);

      1

      2

      3

      4

      5

      6

      7

      8

      9

      在這里,greeting函數(shù)已在greetEmployee函數(shù)內(nèi)部使用。這就是我們所謂的回調函數(shù)。

      感謝閱讀本文。希望這能幫助到你。

      JavaScript

      版權聲明:本文內(nèi)容由網(wǎng)絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權內(nèi)容。

      上一篇:小花帶你一周入門html+css(一)html入門基礎丨【W(wǎng)EB前端大作戰(zhàn)】
      下一篇:Python 爬蟲入門一之綜述
      相關文章
      亚洲AV无码精品国产成人| 亚洲精品国产成人专区| 亚洲国产精品成人综合色在线婷婷| 国产AV无码专区亚洲AVJULIA| 亚洲av综合色区| 亚洲综合在线观看视频| 亚洲国产精品尤物yw在线| 亚洲av无码兔费综合| 亚洲爆乳成av人在线视菜奈实| 亚洲午夜无码久久| 国产精品高清视亚洲一区二区| 亚洲不卡影院午夜在线观看| 亚洲综合欧美色五月俺也去| 亚洲色大成网站www久久九 | 国产成人精品日本亚洲专区6| 亚洲国产成人久久综合一区| 亚洲人成电影在线观看青青| 亚洲一区中文字幕在线电影网| 国产精品亚洲精品观看不卡| 中文字幕无码精品亚洲资源网久久| jlzzjlzz亚洲jzjzjz| 亚洲中文字幕无码mv| 国产成人人综合亚洲欧美丁香花 | 久久精品国产亚洲av瑜伽| WWW国产亚洲精品久久麻豆| 国产亚洲综合视频| 国产成人亚洲精品影院| 亚洲精品国产美女久久久| 午夜亚洲AV日韩AV无码大全| 亚洲精品在线免费看| 亚洲日韩激情无码一区| 亚洲av无码国产精品色午夜字幕| 亚洲成人在线网站| 亚洲国产精品网站久久| 天堂亚洲国产中文在线| 在线91精品亚洲网站精品成人| 久久精品国产亚洲精品| 久久久久亚洲AV成人无码| 亚洲欧洲春色校园另类小说| 亚洲午夜理论片在线观看| 日本中文一区二区三区亚洲|