python入門python的基本語法
633
2025-03-31
JavaScript(JS)是一種具有一流功能的輕量級(jí),解釋性或即時(shí)編譯的編程語言。盡管它是最著名的網(wǎng)頁腳本語言,但許多非瀏覽器環(huán)境也使用它,例如Node.js,Apache CouchDB和Adobe Acrobat。JavaScript是基于原型的,多范式,單線程的動(dòng)態(tài)語言,支持面向?qū)ο?/a>,命令式和聲明式(例如,函數(shù)式編程)樣式。
我們將通過回答最常見的javascript面試問題來學(xué)習(xí)JavaScript。
問題1.什么是JavaScript?
答:JavaScript的高級(jí)定義是:
JavaScript是一種腳本語言,使您能夠創(chuàng)建動(dòng)態(tài)更新的內(nèi)容,控制多媒體,動(dòng)畫圖像以及幾乎所有其他內(nèi)容。
JavaScript是最流行的Web腳本語言,用于客戶端和服務(wù)器端開發(fā)。
可以將JavaScript代碼插入HTML頁面,Web瀏覽器可以理解和執(zhí)行這些頁面。
問題2.JavaScript中有哪些基本類型?或者解釋JavaScript中各種數(shù)據(jù)類型?
答:JavaScript支持的數(shù)據(jù)類型有:
String
Number
Boolean
Symbol
BigInt
Null
Undefined
問題3.undefined和null在JavaScript中有什么區(qū)別?
答:
undefined 是默認(rèn)值
未分配特定值的變量。
沒有顯式返回值的函數(shù)。例如
console.log(12);
對(duì)象中不存在的屬性。JavaScript引擎為我們分配了未定義的值。
let _undefinedVar; const doNothing = () => {}; const someObj = { ab : “Tech Talks”, bc : “With AK”, cd : “Subscribe, Link in Bio”, }; console.log(_undefinedVar); // undefined console.log(doNothing()); // undefined console.log(someObj[“d”]); // undefined
null 是
一個(gè)不代表任何價(jià)值的價(jià)值。
已明確定義為變量的值。
例如,當(dāng)fs.readFile方法沒有引發(fā)錯(cuò)誤時(shí),我們將獲得null值。
fs.readFile('path/to/file', (err,data) => { console.log(e); //prints null when no error occurred if(e){ console.log(e); } console.log(data); } );
比較null和undefined
比較null,undefined時(shí),當(dāng)我們用==我們得到true,當(dāng)我們用===我們得到false。
console.log(null == undefined); // logs true console.log(null === undefined); // logs false
問題4. JavaScript中的轉(zhuǎn)義字符是什么?
答:
當(dāng)有特殊字符工作時(shí)我們使用轉(zhuǎn)義字符backslash (\),例如ampersands (&),apostrophes (‘),double quotes (“ ”)和single quotes (‘ ’)。
JavaScript中會(huì)顯示轉(zhuǎn)義字符中包含的所有內(nèi)容。
JavaScript還提供了六個(gè)附加的轉(zhuǎn)義符:
\ b –退格鍵
\ f –換頁
\ n –換行符
\ r –回車
\ t –水平制表符
\v –垂直制表符
無論如何,這些都不會(huì)在HTML或JS代碼中執(zhí)行。
這些最初是為控制傳真機(jī),電傳打字機(jī)和打字機(jī)而設(shè)計(jì)的。
問題5.什么是Logical AND (&&)邏輯與?
答:
&& or Logical AND 在其操作數(shù)中找到第一個(gè)假表達(dá)式并返回它。
如果找不到任何錯(cuò)誤表達(dá)式,則返回最后一個(gè)表達(dá)式。
它采用短路來防止不必要的工作。
console.log(false && 10 && []); // false console.log(" " && true && 10); // 10
問題6.什么是Logical OR (||)邏輯或?
答:
|| or Logical OR在其操作數(shù)中找到第一個(gè)真表達(dá)式并返回它。
這也采用短路以防止不必要的工作。
console.log(null || 10 || undefined); //prints 10 function printChannelName(name) { var n = name || "Tech Talks With AK"; console.log(n); } printChannelName(); //prints "Tech Talks With AK"
問題7.將字符串轉(zhuǎn)換為數(shù)字的最快方法是什么?
答:
根據(jù)MDN文檔,Unary Plus (+)是將字符串轉(zhuǎn)換為數(shù)字的最快方法,因?yàn)槿绻撝狄呀?jīng)是數(shù)字,則對(duì)值不執(zhí)行任何操作。
問題8. JavaScript中的Error Name values有哪些不同類型?
答:
JavaScript中有6個(gè)Error Name values。
Eval Error – Eval錯(cuò)誤,在eval()中遇到錯(cuò)誤時(shí)拋出(較新的JS版本沒有)
Range Error – 范圍錯(cuò)誤,使用超出指定范圍的數(shù)字時(shí)生成
Reference Error – 參考錯(cuò)誤,使用未聲明的變量時(shí)起作用。
Syntax Error – 語法錯(cuò)誤,使用錯(cuò)誤的語法時(shí),我們會(huì)收到此錯(cuò)誤
Type Error – 嘗試使用超出數(shù)據(jù)類型范圍的值時(shí)引發(fā)此錯(cuò)誤。
URI Error – URI錯(cuò)誤,由于使用非法字符而產(chǎn)生
問題9.請(qǐng)解釋Self Invoking Function
答:
自動(dòng)調(diào)用的功能稱為Self Invoking Functions。
這些也稱為Immediately Invoked Function Expressions(立即調(diào)用函數(shù)表達(dá)式)和Self Executing Anonymous Functions(自執(zhí)行匿名功能)。
一個(gè)Self Invoking Function的一般語法為:
// A function is defined and then invoked (function_name () { return () }) ();
但是,如果需要automatically在給出函數(shù)的地方執(zhí)行某個(gè)函數(shù),而不必再次調(diào)用它,則anonymous functions可以使用它。此類功能沒有名稱。這樣的名字。
問題10.解釋函數(shù)聲明和函數(shù)表達(dá)式之間的差異
答:
函數(shù)聲明和函數(shù)表達(dá)式可以根據(jù)以下四點(diǎn)來區(qū)分
Definition (定義)
Strict Mode (嚴(yán)格模式)
Time of Use (使用時(shí)間)
When to Use(何時(shí)使用)
定義
在主代碼流中聲明為單獨(dú)語句的函數(shù)稱為function declaration(函數(shù)聲明)。
在表達(dá)式或其他語法構(gòu)造內(nèi)部創(chuàng)建函數(shù)時(shí),將其稱為function expression(函數(shù)表達(dá)式)。
嚴(yán)格模式
當(dāng)一個(gè)函數(shù)聲明為within a code block in the Strict mode(在嚴(yán)格模式下的代碼塊內(nèi))時(shí),它在該塊內(nèi)部的任何地方都可見,但在該塊的外部則不可見。
函數(shù)表達(dá)式不是這種情況。
使用時(shí)間
當(dāng)函數(shù)表達(dá)式已創(chuàng)建when the execution reaches it(當(dāng)執(zhí)行到達(dá)時(shí))。從那時(shí)起函數(shù)表達(dá)式就可用。
另一方面,函數(shù)聲明can be called before the same is defined(可以在定義相同對(duì)象之前調(diào)用)時(shí)可用。
何時(shí)使用
函數(shù)聲明提供better readability(更好的可讀性)和提供more freedom in organizing the code(組織代碼的更多自由)。
函數(shù)表達(dá)式通常是restricted to be used when there is a need for a conditional declaration(僅限在需要條件聲明時(shí)使用)。
Java JavaScript
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。