没有合适的资源?快使用搜索试试~ 我知道了~
数据类型大体分为两种,一种是基本数据类型(也叫标准数据类型或简单数据类型),一种是引用数据类型(也叫复杂数据类型),基本数据类型中又分为:布尔型、数值型、字符串型、undefined和null,而引用数据类型中又分为:数组、对象和函数。变量中存储的数据类型没有限制,可以存储任何符合语法规范的数据类型。要想实现一些功能,不同类型之间进行判断和运算,就需要自动或强制的将不同数据类型转成相同数据类型。(逆战班!逆战!) 自动转化 所谓的自动转化,就是计算机程序自动完成的转化,但是不会在任何时候都发生,只会在特定的情况下执行。(划重点啦!) 1.其他数据类型转布尔型 此情况一般发生在判断语句中,如if
资源详情
资源评论
资源推荐
数据类型数据类型 之之 自动转化与强制转化自动转化与强制转化
数据类型大体分为两种,一种是基本数据类型(也叫标准数据类型或简单数据类型),一种是引用数据类型(也叫复杂数据类
型),基本数据类型中又分为:布尔型、数值型、字符串型、undefined和null,而引用数据类型中又分为:数组、对象和函
数。变量中存储的数据类型没有限制,可以存储任何符合语法规范的数据类型。要想实现一些功能,不同类型之间进行判断和
运算,就需要自动或强制的将不同数据类型转成相同数据类型。(逆战班!逆战!)
自动转化自动转化
所谓的自动转化,就是计算机程序自动完成的转化,但是不会在任何时候都发生,只会在特定的情况下执行。(划重点啦!)
1.其他数据类型转布尔型
此情况一般发生在判断语句中,如if判断的表达式中,表达式的运行结果只能是布尔型(true or false)。各种数据类型中,只
有特定的值能转化成false,有0,’’(空字符串),undefined,null和NaN,其他数据,只要变一点,都会转成true。
2.其他数据类型转字符串型
当进行字符串拼接的时候发生,加号两边无论是什么数据类型的数据,都会自动转化成字符串型,而后进行字符串的拼接操
作。
当引用数据类型进行自动转化成字符串型的时候,有各自的特殊显示。(空腹者慎进)
(1)数组转字符型
数组转成字符串时,会将数组中的内容整个转成字符串。
例:
var str1 = "美食 " + ['蛋糕','泡芙','肉松饼'];//进行字符串拼接 字符串+数组
console.log(str1);//在控制台输出字符串拼接结果
(2)对象转字符型
对象是将内容转成[object,Object]之后,再进行字符串拼接。
例:
var str2 = "100 " + 100;//进行字符串拼接 字符串+对象
console.log(str2);//在控制台输出字符串拼接结果
注:第一个
object
的
o
是小写,第二个是大写
O
。
(3)函数转字符型
函数进行字符串拼接时,直接将函数语句转成字符串,再进行字符串拼接。
例:
//进行字符串拼接 字符串+函数
var str3 = '美食' + function choicefood(){console.log('好吃')};
//在控制台输出字符串拼接结果
console.log(str3);
3.其他数据类型转数值型
当执行数学运算时,其他数据类型参与,会自动转成数值型,而后进行计算。
(1)布尔型转数值型
上面提到,0转成布尔型会转成false,这个条件是可逆的,布尔型转数值型时,false会转成0,而true会转成1。
(2)undefined
undefined转成NaN。很显然,undefined不是数,则转成NaN。
(3)null
null表示值为空,0也表示没有,所以null转成0。
(4)字符串
在数值型数据中,其他类型转成数值型会进行一个是否为数字的判断,如不是纯数字或科学计数法,则转成NaN,是则转成相
应的数值。
注:任何有NaN的计算,结果都为NaN。
例:
var int1 = 100 - '100';//结果为0
var int2 = 100 - '123asd';//结果为NaN
var int3 = 100 - '2e2';//2e2 = 2*10^2 = 200,100-200,结果为-100
(5)引用数据类型
加法运算时,引用数据类型进行字符串拼接;
减法运算时,转成NaN。
强制转化强制转化
weixin_38622227
- 粉丝: 4
- 资源: 936
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0