文章目录
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>
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()
函数做强制类型转换时
- 对于
Number
和Boolean
实际上就是调用的toString()
方法- 但是对于
null
和undefined
,就不会调用toString()
方法
- 它将
null
直接转换为"null"
- 将
undefined
直接转换为"undefined"
方式三:使用
+
进行拼接方式
注意是:对于使用toString()
方法转换成String
类型时,只能是Number
和Boolean
类型,而对于Null
和Undefined
类型会报错,而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()
函数
- 字符串 —> 数字
- 如果是纯数字的字符串,则直接将转换为数字
- 如果字符串中有非数字的内容,则转换为
NaN
- 如果字符串是一个空串或者是一个全是空格的字符串,则转换为
0
- 布尔值 —> 数字
true
转成 1false
转成 0null
转成 0nudefined
转成NaN
方式二:
转换方式二:
- 这种方式专门用来对付字符串
parseInt()
把一个字符串转换为一个整数parseFloat()
把一个字符串转换一个浮点数调用
parseInt()
函数将a
转换为Number
,parseInt()
可以将一个字符串中的有效的整数内容取出来,然后转换为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.数字 ----》布尔
除了
0
和NaN
,其余的都是true
2.字符串 ----》布尔
除了空串,其余的都是
true
3.
null
和undefined
都会转换为false
4.对象转换成
true