什麼是 javascript:
javascript 是一種開源程式語言。這有助於建立動態網頁。它也是瀏覽器語言。
它可以在客戶端(在瀏覽器中)和伺服器端(使用 Node.js 等環境)上運行。
JavaScript 支援事件驅動、非阻塞和非同步編程,這對於同時處理多個任務至關重要。
變數:
變數是儲存資料的容器
變數類型
運算子:
Javascript 運算子用於執行不同類型的數學和邏輯計算。
運算符的類型
資料型別
定義變數的型別
原始資料型別=以值儲存值
非預設資料型別 = 透過引用(位址)儲存值
JavaScript 中的匯出和預設匯出之間的主要差異?
是導出預設值用於從模組導出單一值,
而帶有命名導出的導出用於導出多個值
原始資料型別和非原始資料型別之間的主要差異?
函數:
JavaScript 函數是設計用於執行特定任務的程式碼區塊。
javascript 是靜態型別語言還是動態型別語言?
JavaScript 是一種動態型別語言。在動態型別語言中,
與靜態類型語言相比,在執行時間檢查變數的類型,
在編譯時檢查變數的類型。
解釋按值傳遞和按引用傳遞?
在 JavaScript 中,原始資料類型透過值傳遞,非原始資料類型透過引用傳遞。
原始資料型別 = 字串、數字、布林值、null、未定義
非原始資料型別 = 物件、陣列
javascript中的嚴格模式是什麼意思以及javascript嚴格模式的特徵?
允許您在嚴格的運行環境中編寫程式碼或函數。
結果,調試變得更加簡單。
JavaScript 中的工廠函數是什麼?
如果我們有複雜的邏輯,並且我們必須一次又一次地創建多個具有相同邏輯的對象,
我們可以在函數中編寫一次邏輯,然後使用函數作為工廠來建立我們的物件。
就和現實世界的工廠生產產品一樣。
工廠函數是傳回物件的函數。
高階函數:
函數接受其他函數作為參數或傳回該函數。
map、filter和reduce函數都是HOF的例子。
高階函數對於事件處理、資料轉換(例如映射和過濾器)以及建立函數工廠或裝飾器等任務非常有用。
關閉:
當一個函數在另一個函數中定義時,就會建立閉包,
並且內部函數保留對外部函數作用域中的變數和方法的存取
閉包提供了一種將資料封裝在函數中的方法,允許對資料進行受控訪問,同時保持資料對外部範圍隱藏。
回調:
用作另一個函數的參數的函數稱為回調函數。
回調是一個函數,它將在另一個函數執行後執行。
當我們想要執行非同步操作時回調函數的用例。
map() 與 forEach()
地圖()=>迭代數組的每個元素並對每個元素應用轉換函數。
不修改原始數組;它使用轉換後的元素建立一個新數組。
forEach()=>迭代數組的每個元素並為每個元素執行提供的回調函數。
不建立新數組或修改現有數組;它只執行回調函數。
map()、filter()、reduce()
map()它將傳回新數組
filter() 與map() 類似,它也傳回新數組,但如果條件為真。當我們想要應用條件時使用。
reduce() 它將從數組傳回單一值。
此關鍵字:
this 關鍵字的值始終取決於呼叫該函數的物件。
柯里化:
將具有 n 個參數的函數轉換為 n 個函數。
啟用部分應用程式的用例(當您有一個接受多個參數的函數,但您只想修復其中一些參數,同時保留其他參數以供以後使用時),
程式碼的重用。
例如
function add (a) { return function(b){ return a + b; } } add(3)(4)
普通函數與箭頭函數?
正常功能:
this 指的是呼叫該函數的物件
可以用作建構子
函數宣告被提升(允許託管)
箭頭函數:
沒有自己的這個
不能用作建構子
函數宣告不被提升(不允許託管) // myfunc 不是函數
正常和三元條件?
三元條件儲存沒有此上下文的引用。
javascript的exec()和test()方法有什麼差別?
test() 和 exec() 是 javascript 中使用的正規表示式方法。
使用外部 JavaScript 的一些優點?
我們可以重複使用該程式碼。
外部 javascript 程式碼可讀性簡單(程式碼模組化)
原型:
JavaScript 原型屬性還允許您為物件建構函式新增屬性和方法。
用於測試的用例
記憶:
記憶化是一種快取形式,其中函數的返回值根據其參數進行緩存。
如果函數的參數未更改,則傳回該函數的快取版本。
DOM:
DOM 代表文檔物件模型。 DOM 是 HTML 的程式設計介面。
當瀏覽器嘗試渲染 HTML 文件時,它會建立一個 DOM
使用這個 DOM,我們可以操作或更改 HTML 文件中的各種元素。
物料清單:
瀏覽器物件模型稱為 BOM。它允許用戶與瀏覽器互動。
瀏覽器的初始物件是視窗。
承諾:
Promise 用於處理 JavaScript 中的非同步操作。在 Promise 之前,回調用於處理非同步操作。
Promise 物件有四種狀態 -
待定 - 承諾的初始狀態。
Fulfilled-這個狀態代表承諾已經兌現了,。
Rejected- 此狀態代表 Promise 已被拒絕。
已解決 - 此狀態表示承諾已被拒絕或已履行。
非同步/等待:
它建立在 Promise 之上,它提供了更簡潔的方式來編寫非同步程式碼,使其更易於閱讀和編寫。
async 關鍵字用於聲明同步函數,await 用於等待 Promise 解決。
表現與結構
=>express 是回傳一些值
例如
function add (a) { return function(b){ return a + b; } } add(3)(4)
5 和 myfun() 傳回一些值是一個表達式
指令和指令操作的語句,但不傳回值
例如 if,else, while 這些都是語句
while(i
剩餘參數與展開運算子:
剩餘參數它將單獨的元素組合成一個陣列
擴充運算子用於將陣列分成單一元素
生成器函數?
可以中途停下來,然後從停下的地方繼續。
生成器物件包含一個名為 next() 的方法,該方法被呼叫時,會執行程式碼直到最近的yield 語句,並傳回yield 值。
呼叫()、應用()和綁定():
所有這些都是用來給這個關鍵字分配物件(給這個關鍵字賦值)
當我們想要使用所需物件操作函數的 this 關鍵字時的用例
bind() 方法 建立一個新函數,在呼叫時,將其 this 關鍵字設定為提供的值(例如物件)。它創建一個新物件。
call() 和 apply() 有完全相同的目的。 call() 方法不會複製正在呼叫的函數。
它們工作方式之間的唯一區別是 call() 期望所有參數單獨傳入,
而 apply() 需要一個包含所有參數的陣列。
IIFE:
立即呼叫函數,該函數一旦定義就運行。
例如
const x=5; const y=myfun();
純函數:
對於相同的輸入產生相同的輸出。當表達式的運算元具有不同資料類型時,就會發生這種情況。
不修改外部狀態或變數的函數
javascript 是靜態型別語言還是動態型別語言?
在動態類型語言中,與靜態類型語言相反,在執行時間檢查變數的類型,
在編譯時檢查變數的類型。
例如
靜態型別
(function(){ // Do something; })();
動態型別
string name="salman"; // varaible has types
酷爾幣:
將值從一種資料類型自動轉換為另一種資料類型。
字串強制轉換
將數字轉換為字串
- 將字串轉換為數字
NaN():
isNaN() 函數將給定值轉換為 Number 類型,然後等於 NaN。
ASP 腳本與 javascript ?
ASP 腳本運行在伺服器上,而 JavaScript 運行在客戶端瀏覽器上。
ASP 腳本是一種伺服器端語言,用於處理複雜的任務,例如資料庫查詢、表單提交和使用者驗證。
而 JavaScript 是一種客戶端語言,用於在網頁上建立互動元素,例如動畫、彈出視窗和表單驗證。
未定義值:
值未定義,但存在變數
物件中缺少屬性
eslint:
它有助於調試和修復 javascript 程式碼中的常見漏洞
想了解更多關於我的信息,只需在搜尋引擎上寫sallbro...
以上是關於 Javascript 中級的一切的詳細內容。更多資訊請關注PHP中文網其他相關文章!