JS中常见基础、数据类型问题

212 阅读2分钟

JavaScript 的基本类型有哪些?

1. number 数字型

-avaScript 中的正数、负数、小数等 统一称为 数字类型

2.string 字符串型

  • 通过单引号( '') 、双引号( "")或反引号( ` )包裹的数据都叫字符串,外双内单,或者外单内双

3.boolean 布尔型

  • 它有两个固定的值 true 和 false,表示肯定的数据用 true(真), 表示否定的数据用 false(假)。

4.undefined 未定义型

  • 只声明变量,不赋值的情况下,变量的默认值为 undefined, 一般很少【直接】为某个变量赋值为 undefined。

5.null 空类型

  • null 表示 值为 空 null 表示赋值了,但是内容为空

引用类型有哪些?

  1. object 对象 2.function 函数

3.array 数组

null 和undefined 的区别

1.null 表示赋值了,但是内容为空

2.undefined开发中经常声明一个变量,等待传送过来的数据。 只声明变量,不赋值的情况下,变量的默认值为 undefined,

如何判断 JavaScript 的数据类型

可以通过typeof打印输出判断

JavaScript 中什么情况下会返回undefined 值

1.定义了形参,没有传实参,显示undefined

2.对象属性名不存在时,显示undefined

3.函数没有写返回值,即没有写return,拿到的是undefined

4.写了return,但没有赋值,拿到的是undefined

5.访问声明,但是没有初始化(赋值)的变量

判断一个值是什么类型有哪些方法

1. typeof

  • 可以判断数据类型,它返回表示数据类型的字符串(返回结果只能包括number,boolean,string,function,object,undefined);
  • 可以使用typeof判断变量是否存在(如if(typeof a!=“undefined”){…});
  • Typeof 运算符的问题是无论引用的对象是什么类型 它都返回object

2.通过Object下的toString.call()方法来判断

=== 和 ==的区别

双等号==

  (1)如果两个值类型相同,再进行三个等号(===)的比较

  (2)如果两个值类型不同,也有可能相等,需根据以下规则进行类型转换在比较:

    (1)如果一个是null,一个是undefined,那么相等

    (2)如果一个是字符串,一个是数值,把字符串转换成数值之后再进行比较

三等号===:

  (1)如果类型不同,就一定不相等

  (2)如果两个都是数值,并且是同一个值,那么相等;如果其中至少一个是NaN,那么不相等。(判断一个值是否是NaN,只能使用isNaN( ) 来判断)

  (3)如果两个都是字符串,每个位置的字符都一样,那么相等,否则不相等。

  (4)如果两个值都是true,或是false,那么相等

  (5)如果两个值都引用同一个对象或是函数,那么相等,否则不相等

  (6)如果两个值都是null,或是undefined,那么相等