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的变量本身是没有类型的, 变量的类型实际上是变量内存中数据的类型
  • 变量类型:
    • 基本类型: 保存基本类型数据的变量
    • 引用类型: 保存对象地址值的变量
相关推荐
OPEN-F5 小时前
C++进阶教程:继承与多态
开发语言·c++
泯泷6 小时前
手搓JSVMM第 8 篇:函数调用:参数、返回值与调用帧
前端·javascript·前端框架
Mr数据杨7 小时前
【Codex】用学生入学评估模块建立新生能力画像
android·java·javascript·django·codex·项目开发
luj_17687 小时前
大律师考核应重能力与科技素养
c语言·开发语言·c++·经验分享·算法
苏灿烤鱼8 小时前
没有机密文件,也没有付费数据,在浏览器里造一颗"间谍卫星"
前端·javascript·github
leonkay8 小时前
C# 特性(Attribute)——【1】基础讲解
开发语言·青少年编程·面试·c#·.net·个人开发
harmful_sheep8 小时前
java group by常见用法
java·开发语言·python
泯泷8 小时前
手搓JSVM第 5 篇:写第一个编译器:从 AST 生成 IR
前端·javascript·算法
SKH.8 小时前
Linux软件编程(6)线程间通信
java·开发语言·数据库
泯泷8 小时前
手搓JSVM第 7 篇:控制流:if、while 与 jump
前端·javascript·算法