面試-JS基礎知識-變數型別和計算

一个甜橙子發表於2024-09-10

問題引出:

值型別和引用型別的區別

  • 值型別

  • 引用型別

typeof能判斷哪些型別?

  • 識別所有值型別

  • 識別函式

  • 判斷是否是引用型別(不可再細分)

何時使用 === 何時使用 ==

手寫深複製

function deepClone(obj) {
  if (obj === null || typeof obj !== 'object') {
    return obj; // 如果是原始型別,直接返回
  }

  // 建立一個新的物件或陣列
  let clone = Array.isArray(obj) ? [] : {};

  for (let key in obj) {
    if (obj.hasOwnProperty(key)) {
      clone[key] = deepClone(obj[key]); // 遞迴複製每一個屬性
    }
  }

  return clone;
}
  • 變數計算

    雙等號

    除了 == null之外,其他一律用 ===

    if語句和邏輯運算
  • falsely變數和truely變數:兩步非運算之後等於false的就是falsely變數

相關文章