JS高级_数据类型

undefined与null的区别?

  • undefined代表没有赋值
  • null代表赋值了, 只是值为null
clike 复制代码
  // 1. undefined与null的区别?
  var a1
  var a2 = null
  console.log(a1, a2)

什么时候给变量赋值为null呢?

  • var a = null //已经确定a是一个对象, 但还没具体赋值(开始)
  • a = null //让a指向的对象成为垃圾对象被浏览器回收(结束)
clike 复制代码
// 2. 什么时候给变量赋值为null呢?
    //初始
  var a3 = null
    //中间
  var name = 'Tom'
  var age = 12
  a3 = {
    name: name,
    age: age
  }
    //结束
  a3 = null

严格区别变量类型与数据类型?

  • js的变量本身是没有类型的, 变量的类型实际上是变量内存中数据的类型
  • 变量类型:
    • 基本类型: 保存基本类型数据的变量
    • 引用类型: 保存对象地址值的变量
相关推荐
我居然是兔子2 小时前
异常练习:在试错中吃透Java异常处理的底层逻辑
java·开发语言
养一回月亮!2 小时前
使用Qt实现简单绘图板:鼠标绘制与擦除功能详解
开发语言·qt
BanyeBirth2 小时前
C++差分数组(二维)
开发语言·c++·算法
Tony Bai2 小时前
Go 的 AI 时代宣言:我们如何用“老”原则,解决“新”问题?
开发语言·人工智能·后端·golang
Fcy6482 小时前
C++ map和multimap的使用
开发语言·c++·stl
L Jiawen3 小时前
【Golang基础】基础知识(下)
服务器·开发语言·golang
C_心欲无痕3 小时前
vue3 - defineExpose暴露给父组件属性和方法
前端·javascript·vue.js·vue3
云栖梦泽4 小时前
鸿蒙应用AI赋能与国际化落地实战:让待办应用跨越语言与智能边界
开发语言·鸿蒙系统
贺今宵4 小时前
安装better-sqlite3报错electron-vite
javascript·sql·sqlite·sqlite3
CoderCodingNo4 小时前
【GESP】C++五级真题(结构体排序考点) luogu-B3968 [GESP202403 五级] 成绩排序
开发语言·c++·算法