JS 基础知识点及常考面试题(一)1

js类型 原始类型 引用类型 typeof

  • typeof 返回值 6种 number string boolean undefined object(数组也是对象) function
  • js5/6中基本数据类型(原始类型):number string boolean undefined null (symbol)
  • js2种引用类型:object function
    -特殊数据类型 :undefined null
  • 关于NAN:NAN typeof NAN => Number

NAN = NAN // NAN
NAN运算结果NAN ,NAN转布尔false
NAN == NAN //false
NAN === NAN //false
原理:

  • NaN ,即非数值(Not a Number)是一个特殊的数值,这个数值用于表示一个本来要返回数值的操作数未返回数值的情况(这样就不会抛出错误了)
  • 任何与NaN进行运算的结果均会为NaN,NaN与自身不相等(NaN不与任何值相等)

isNAN() //output Boolean

undefined null

null
  • typeof null //output object
    解释:这只是 JS 存在的一个悠久 Bug,
    ——— JS 的最初版本中使用的是 32 位系统,为了性能考虑使用低位存储变量的类型信息, 000 开头代表是对象,然而 null 表示为全零,所以将它错误的判断为 object 。
    ———现在的内部类型判断代码已经改变了,但是对于这个 Bug 却是一直流传下来
  • null == undefined //output true
undefined
  • typeof undefined // output undefined
  • null == undefined //output true
  • undefined 全局变量 声明未赋值的 函数无返回值的 均返回undefined 类型
关系
  • 提示: Null undefined 没有.tostring 方法 强制会报错
  • 关系link

尽管null和undefined有这样的关系,但它们的用途完全不同,如前所述,>无论什么情况下都没有必要把一个变量的值显式地设置为undefined,可视同样的规则对null却不适用。换句话说,只要意在保存对象的变量还没有真正保存对象,就应该明确地让该变量保存null值。这样做不仅可以体现null作为空对象指针的惯例,而且也有助于进一步区分null和undefined。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一章: JS简介 从当初简单的语言,变成了现在能够处理复杂计算和交互,拥有闭包、匿名函数, 甚至元编程等...
    LaBaby_阅读 1,703评论 0 6
  • 第三章 基本概念 3.1 语法 ECMAScript标识符一般采用驼峰大小写格式,也就是第一个字母小写,剩下的每个...
    小雄子阅读 587评论 0 1
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,750评论 1 45
  • 第3章 基本概念 3.1 语法 3.2 关键字和保留字 3.3 变量 3.4 数据类型 5种简单数据类型:Unde...
    RickCole阅读 5,163评论 0 21
  • JavaScript学习(1)之JavaScript基础 由于工作原因,开发语言逐渐以JavaScript为主,所...
    AlphaGL阅读 444评论 0 2