JS中数据类型

JS数据类型

1.JS数据类型的介绍

JavaScript中一共有5种基本数据类型和Object类型

  • 字符串(String
  • 数值型(Number
  • 布尔型(boolean
  • null
  • undefined型(Undefined

上述的五种是基本数据类型

Object类型是引用类型

2.String 类型

String字符串

  • JS中字符串需要使用引号起来
  • 使用双引号或单引号都可以,但是不要混着使用
  • 引号不能嵌套,双引号不能嵌套双引号[双引号可以嵌套单引号],单引号不能嵌套单引号[单引号可以嵌套双引号]
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>String类型</title>
</head>
<body>
<script type="text/javascript">
  /**
   * 在JS中基本数据类型有五种,引用数据类型有Object
   *    - 五种数据类型有:
   *        - String
   *        - Number
   *        - Null
   *        - Boolean
   *        - Undefined
   *    - 引用数据类型
   *        - Object
   */

  // 字符串基本介绍

  /*
   * String字符串
   * 	- 在JS中字符串需要使用引号引起来
   * 	- 使用双引号或单引号都可以,但是不要混着用
   * 	- 引号不能嵌套,双引号不能放双引号,单引号不能放单引号
   */
  
  var str = "湛江";
  alert(str);
  
</script>
</body>
</html>

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pT5aQM8i-1661261285993)(D:\typora笔记\JS\img\1661053544478.png)]

3.Number类型

JS所有的数值都是Number类型

​ 包括整数和浮点数(小数)

JS中可以表示的数字的最大值

​ Number.MAX_VALUE = 1.7976931348623157e+308

​ Number.MIN_VALUE 大于0的最小值 = 5e-324

如果使用Number表示的数字超过最大值,则会返回一个

  	-  `Infinity`表示正无穷	
  	-  `-Infinity`表示负无穷	
  	-  使用`typeof`检查`Infinity`也会返回`number`

NaN是一个特殊的数字,表示是Not A Number,在使用typeof检查一个NaN也会返回number,注意是使用typeof检查返回都数据类型的小写,如使用typeof检查NaN返回是number'海康'返回是string

123+1=124
'123'+1=1231
'a'+1=NaN,就是不能将字符串转换成数字与数字进行运算时,就返回`NaN`

3.Boolean类型

Boolean布尔值,布尔值只有两个值,主要用来做逻辑判断

true 表示值

false 表示假

使用typeof检查一个布尔值时,会返回boolean

4.Null类型

Null空值类型的值只有一个,就是null

null这个值专门用来表示一个为空的对象,使用typeof检查一个null值时,会返回Object类型

5.Undefined类型(未定义)

Undefined类型的值只有一个,就是nudefined,当声明一个变量时,但是并不会这个变量赋值时,它的值就是nudefined类型,使用typeof检查一个nudefined时也会返回nudefined类型

null专用于表示空值,使用typeof返回object类型,定义一个变量,未给该变量赋值时,使用typeof返回undefined类型

注意是:parseInt()parseFloat()方法的转换,第一步是将它们不是String类型的数据转换成String类型,再进行操作

6.强制类型转换

  • 指将一个数据类型强制转换为其他的数据类型
  • 类型转换主要指的是将其他的数据类型,转换为String Number Boolean类型

7.转换成String类型【重点】

将其他的数据类型转换成String

方式一:

  - 调用被转换数据类型的`toString`方法
  - 该方法不会影响到原来的变量,它会将转换的结果返回
  - 注意的是:`null`和`undefined`这两个值没有`toString()`方法,如果调用他们的方法,会直接报错

方式二:

  • 调用String()函数,并将被转换的数据作为参数传递给函数

  • 使用String()函数做强制类型转换时

    • 对于NumberBoolean实际上就是调用的toString()方法
    • 但是对于nullundefined,就不会调用toString()方法
      • 它将null直接转换为"null"
      • undefined直接转换为"undefined"

方式三:使用+进行拼接方式

注意是:对于使用toString()方法转换成String类型时,只能是NumberBoolean类型,而对于NullUndefined类型会报错,而String()函数对所有类型都可以

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>转换成String类型</title>
</head>
<body>
<script type="text/javascript">
      // 转换成String方式一:toString()方法
      // number 转换成 toString()
      var number = 168;
      alert(typeof number);
      number = number.toString();
      alert(typeof number)

      // boolean 转换 toString()
      var bool = true;
      alert(typeof bool);
      bool = bool.toString();
      alert(typeof bool);

      // 注意是:null和undefined类型不能直接调用toString方法转换成String 类型否则会报错

      // 方法二:使用String()函数,对于所有数据类型都适用
      var num2 = 123168;
      var bool2 = "明天";
      var null1 = null;
      var nude = undefined;

      alert(typeof num2);
      alert(typeof bool2);
      alert(typeof null1);
      alert(typeof nude);

      num2 = String(num2);
      bool = String(bool2);
      null1 = String(null1);
      nude = String(nude);

      alert(typeof num2);
      alert(typeof bool2);
      alert(typeof null1);
      alert(typeof nude);

      // 方式三:
      var num3 = 123168+"12";
      var bool3 = "明天"+"123";
      var null2 = null+"a";
      var nude1 = undefined+"a";

      alert(typeof num3);
      alert(typeof bool3);
      alert(typeof null2);
      alert(typeof nude1);

</script>
</body>
</html>

8.转换成Number类型

将其他的数据类型转换成Number类型

方式一:

​ 使用Number()函数

  • 字符串 —> 数字
    1. 如果是纯数字的字符串,则直接将转换为数字
    2. 如果字符串中有非数字的内容,则转换为NaN
    3. 如果字符串是一个空串或者是一个全是空格的字符串,则转换为0
  • 布尔值 —> 数字
    1. true 转成 1
    2. false 转成 0
    3. null 转成 0
    4. nudefined 转成 NaN

方式二:

转换方式二:

  • 这种方式专门用来对付字符串
  • parseInt()把一个字符串转换为一个整数
  • parseFloat()把一个字符串转换一个浮点数

调用parseInt()函数将a转换为NumberparseInt()可以将一个字符串中的有效的整数内容取出来,然后转换为Number

parseFloat()作用和parseInt()类似,不同的是它可以获得有效的小数,如果对非String使用parsetInt()parseFloat(),它会先将其转换为String然后在操作

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
		
			/*
			 * 将其他的数据类型转换为Number
			 * 	 转换方式一:
			 * 		使用Number()函数
			 * 			- 字符串 --> 数字
			 * 				1.如果是纯数字的字符串,则直接将其转换为数字
			 * 				2.如果字符串中有非数字的内容,则转换为NaN
			 * 				3.如果字符串是一个空串或者是一个全是空格的字符串,则转换为0
			 * 			- 布尔 --> 数字
			 * 				true 转成 1
			 * 				false 转成 0
			 * 
			 * 			- null --> 数字     0
			 * 
			 * 			- undefined --> 数字 NaN
			 * 
			 * 转换方式二:
			 * 		- 这种方式专门用来对付字符串
			 * 		- parseInt() 把一个字符串转换为一个整数
			 * 		- parseFloat() 把一个字符串转换为一个浮点数
			 */
			
			var a = "123";
			
			//调用Number()函数来将a转换为Number类型
			a = Number(a);
			
			a = false;
			a = Number(a);
			
			a = null;
			a = Number(a);
			
			a = undefined;
			a = Number(a);
			
			a = "123567a567px";
			//调用parseInt()函数将a转换为Number
			/*
			 * parseInt()可以将一个字符串中的有效的整数内容去出来,
			 * 	然后转换为Number
			 */
			a = parseInt(a);
			
			/*
			 * parseFloat()作用和parseInt()类似,不同的是它可以获得有效的小数
			 */
			a = "123.456.789px";
			a = parseFloat(a);
			
			/*
			 * 如果对非String使用parseInt()或parseFloat()
			 * 	它会先将其转换为String然后在操作
			 */
			a = true;
			a = parseInt(a);
			
			a = 198.23;
			a = parseInt(a);
			
			console.log(typeof a);
			console.log(a);
			
			
			
		</script>
	</head>
	<body>
	</body>
</html>

9.转换成Boolean

将其他的数据转换为Boolean

​ 使用Boolean()函数

1.数字 ----》布尔

​ 除了0NaN,其余的都是true

2.字符串 ----》布尔

​ 除了空串,其余的都是true

3.nullundefined都会转换为false

4.对象转换成true

相关文章

学习编程是顺着互联网的发展潮流,是一件好事。新手如何学习...
IT行业是什么工作做什么?IT行业的工作有:产品策划类、页面...
女生学Java好就业吗?女生适合学Java编程吗?目前有不少女生...
Can’t connect to local MySQL server through socket \'/v...
oracle基本命令 一、登录操作 1.管理员登录 # 管理员登录 ...
一、背景 因为项目中需要通北京网络,所以需要连vpn,但是服...