肿瘤康复网,内容丰富有趣,生活中的好帮手!
肿瘤康复网 > javascript中数据类型及转换 String()和toString()的区别

javascript中数据类型及转换 String()和toString()的区别

时间:2020-08-13 06:04:38

相关推荐

数据类型:

JavaScript中的数据类型:

在计算机中,不同的数据类型所占的储存空间是不同的。1、原始数据类型:number (数字)、string(字符串)、boolean(布尔值)、null(空对象)、undefined(未定义)、object(对象)6种,前面5种分为简单数据类型,后面的object为复杂数据类型;2、ECMAScript6中新增symbol,3、新增BigInt,与Number相比,可以支持更大的整数值,共8种。

1、number:数字类型(整数和小数)2、string:字符串类型(值一般是用双引号或者单引号括起来的)3、boolean:布尔值,值为true或者false4、null:空类型,值为null,一个对象指向为空时,此时值为null5、undefined:未定义,值为undefined,值为undefined的情况:1、变量声明后没有赋值2、函数没有明确返回值,如果接收了,结果是undefined3、一个变量的的结果是undefined和一个数字计算的结果是NaN,结果为非数字,没有意义6、object:对象

输出数据类型:typeof 变量名 或 typeof(变量名),如

<script>var num = 10;console.log(typeof(num));console.log(typeof num);</script>

Number类型:

数值字面量,数值的固定表示。在JavaScript中使用的是十进制,常见的数字进制还有二进制、八进制、十六进制等。浮点数:指小数,浮点数之间的计算有出现问题,两个浮点数之间是不能判断是否相等的,如果实在要计算,只能把它放大到整数后在计算,之后在缩小相同的倍数。数字的范围:最大值:Number.MAX_VALUE 最小值:Number.MIN_VALUE 无穷大:Infinity 无穷小:-Infinity;NaN指一个坏掉的数字,它和任何数字或者NaN都不能比较,判断一个数据类型是否为NaN的方法:isNaN(变量)。

String类型:

字符串字面量,指用双引号或者单引号包裹着的字符;字符串的长度:str.length;转义符:JavaScript好多特殊符号是通过\来转义的,转义符很多,我们用的时候到官网查就可以了,不需死记硬背。字符串的拼接:只要有一个是字符串,用加号连接就是拼接。有一个是数字使用减号,其他是字符串则相减。

<script>// 字符串可以使用单引号也可以使用双引号console.log("哈哈\\嘎嘎");console.log("哈哈\t嘎嘎");console.log("哈哈\"嘎嘎");// 字符串的拼接var str1 = '你好';var str2 = '我好';var str = str1 + str2;console.log(str) //你好 我好var num1 = 3;var str1 = '10';var sum = num1 + str1;console.log(sum); //310 // 隐式转换:通过 -、*、/ 浏览器自动的把字符串转换成数字类型,如:var str1 = '10';var str2 = '20';var num = str2 - str1;console.log(num); //10var num1 = '10';var num2 = 5;console.log(num1 * num2); //50console.log(num1 / num2); //2</script>

Boolean类型:

字面量是true和false(1或0)。

Undefined类型:

表示一个声明后没有赋值的变量。

null类型:

表示一个空,如果想要是变量的值为null,那么必须手动设置:var nul = null;

<script>console.log(true); //truevar str;console.log(str); //undefinedconsole.log(str + 'str'); //undefinedstrconsole.log(str + 12); //NaNconsole.log(str + true); //NaNconsole.log(str + false); //NaNvar nul = null;console.log(nul); //nullconsole.log(nul + 'str'); //nullconsole.log(nul + 12); //12console.log(nul + true); //1console.log(nul + false); //0</script>

数据类型转换:

<script>// 一、转整数:parseInt()console.log(parseInt('10'));//10console.log(parseInt('20dfa'));//20console.log(parseInt('gg10'));//NaNconsole.log(parseInt('2hu3'));//2console.log(parseInt(10.78));//10console.log(parseInt('23.4fs'));//23// 二、转小数:parseFloat()console.log(parseFloat('19'));//19console.log(parseFloat('19jk'));//19console.log(parseFloat('gf19'));//NaNconsole.log(parseFloat('12.78j32'));//12.78// 三、转数字,比上面的两种要严,只有纯数字的字符串才会被转成数字类型:Number()console.log(Number('29'));//29console.log(Number('19ds'));//NaNconsole.log(Number('f43'));//NaNconsole.log(Number('10.98'));//10.98// 四、转字符串:num.toString()和String(num)var num = 10;console.log(num.toString());//'10'console.log(String(num));//'10'// 如果变量有意义调用.toString()转换// 如果变量没有意义使用String()转换// 五、转boolean值:Boolean()console.log(Boolean(1));//trueconsole.log(Boolean(0));//falseconsole.log(Boolean(''));//falseconsole.log(Boolean('3'));//trueconsole.log(Boolean(null));//falseconsole.log(Boolean(undefined));//falseconsole.log(Boolean(NaN));//falseconsole.log(Boolean(false));//false</script>

String()和.toString()的区别:.toString()只能转换有意义的数据类型,而String()则没有那么要求高。

<script>var num = null;var str;console.log(toString(num)); //undefinedconsole.log(toString(str)); //undefinedconsole.log(num.toString());//报错console.log(str.toString());//报错</script>

eval()方法:

eval()方法是可以计算字符串的,普通的字符串是无法做计算的,如:

var str = '2+3';console.log(str);//2+3console.log(eval(str));//5

提示:本文图片等素材来源于网络,若有侵权,请发邮件至邮箱:810665436@联系笔者 删除。

笔者:苦海

如果觉得《javascript中数据类型及转换 String()和toString()的区别》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。