首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

JavaScript 判斷函數參數是對象還是基本類型的標準方法

     編輯:程式設計綜合問答

場景

HTML 中兩個 `` 分別有 `id="mc"` 和 `name="mc"`,`onclick="a(mc)"` 傳遞參數,函數內需判斷接收到的是 DOM 對象還是字符串。

核心判斷邏輯

function a(mc) {
    // typeof 返回 'object' 表示對象(含 null、數組、DOM)
    // 返回 'string'、'number'、'boolean' 等表示基本類型
    console.log(typeof mc);
    
    // 進一步區分 null 與對象
    if (mc === null) { /* null */ }
    else if (typeof mc === 'object') { /* DOM/數組/普通對象 */ }
    else { /* 基本類型 */ }
}

關鍵提示

  • `onclick="a(mc)"` 中的 `mc` 會被解析為全局變量 `mc`(指向 `id="mc"` 的元素),而非 `name="mc"` 的集合。
  • 若需獲取 `name` 集合,應用 `document.getElementsByName('mc')`。
  • 推薦使用 `element.addEventListener('click', handler)` 綁定事件,避免內聯事件處理器的作用域混淆。

JavaScript typeof 判斷參數類型,DOM 對象與基本類型區分,內聯事件作用域陷阱。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved