美文网首页
JS数据类型之间的转换

JS数据类型之间的转换

作者: 印第安老斑鸠_333 | 来源:发表于2019-02-24 21:35 被阅读0次

Number,String,Boolean,Object,Undefined,Null,symbol(ES6);这七种数据类型的值是可以互相转换的。(这里不讲symbol)。

1.其他类型的值转换为String:

    罗列出以下几种方法供参考:

    ①,value.toString();

    ②,String(value);

    ③,与空字符串相加:value+''

    PS: toString方法不能转换null与undefined,会报错,因为这两种值没有toString方法。其余转换字符串的方法就没有什么限制。

    罗列其他类型转换字符串后的值供参考:

    1  >>>>>  '1'

    true  >>>>>  'true'

    unll  >>>>>  'null'

    undefined  >>>>>  'undefined'

    {'有属性':'或没属性'}  >>>>>  '[object object]'

    function(){}  >>>>>  'function(){}'

    [ ]  >>>>>  ''

    [1,2,3]  >>>>>  '1,2,3'

   PS:黑体部分,也就是函数与数组,他俩属于object类型。

2.其他类型的值转换为Number:

    罗列一下方法供参考:

    ①,Number(value);

    ②,取正运算:+value;

    ③,减零运算:value-0

    ④,将字符串转换为整数:parseInt(value, 进制);详见MDN   

    PS:如果value不是字符串,会先转字符串。第二个参数务必别省略,用哪种进制解析value是它决定的。省略不写就默认认十进制。转换从左往右进行,碰到第一个非数字停止,但是会忽略空格。没有数字返回NaN。见下例:

    例:1. parseInt(1qw,10)  >>>>>  '1qw'  >>>>>1

           2. parseInt(null,10)  >>>>>  'null'  >>>>>NaN

           3. parseInt('   1n  u  ll',10)  >>>>>   '1n  u  ll'  >>>>>1

    ⑤,将字符串转换为浮点数:parseFloat(value);详见MDN

     PS:如果value不是字符串,会先转字符串。转换从左往右进行,碰到第一个“非数字也非小数点”的字符停止,若满足转换的首位是数字则会忽略数字前面空格若满足转换的首位是小数点则会忽略小数点前面空格。数字与小数点之间的空格不忽略。没有数字或小数就返回NaN。很拗口很难理解,见下例。

    例:1. parseFloat('   .1 q we')  >>>>> 0.1;  //首位小数点,忽略前空格

            2. parseFloat('   1   .123   q we')  >>>>> 1; //首位数字,忽略前空格

            3. parseFloat('   a1  a .123   q we')  >>>>> NaN;//首位非数字非小数点

            4 .parseFloat('   1   .123   q we')  >>>>> 1;//首位数字,忽略前空格,数字与小数点之间有空格,停止转换。

    罗列其他类型的值转换为数值供参考:

    '1.33e4'     >>>>>  13300

    '3wer'        >>>>>   NaN

    true           >>>>>   1

    false          >>>>>   0

    null            >>>>>   0

    undefined  >>>>>   0

    {a:123}       >>>>>  NaN

    function (){}>>>>> NaN

     [1,2,3 ]      >>>>>  NaN

     [ ]              >>>>>  0

     ['']              >>>>>  0

     ['1']            >>>>>  1

     [1]             >>>>>  1

3,其他类型的值转换为Boolean:

    罗列以下方法供参考:

    ①,Boolean(value);

    ②,!!value;

    罗列其它数据类型转换为布尔值供参考:

    null,undefined,0,'',NaN,0.0转换为布尔值为false,其余所有值全为true。

                                                                                                                                以上

相关文章

  • JS数据类型转换(2)

    在上一篇的js数据类型转换(1)中,只考虑了基础数据类型之间的相互转换,未考虑对象和基础类型的转换,本篇做介绍。 ...

  • 2、强制数据类型转换

    数据类型转换: 在js中,数据类型的转换有两种,分别是自动转换和强制转换 自动转换: 自动转换是用JS进行某些操作...

  • JS数据类型

    在js中有几种重要的数据类型,我们需要掌握各种数据类型的特点,以及它们之间的转换。 基本数据类型:(1)undef...

  • JS里的数据类型转换

    在js中,数据类型转换分为显式数据类型转换和隐式数据类型转换。 1, 显式数据类型转换 a:转数字: 1)Numb...

  • JavaScript的显式转换和隐式转换

    js的显式转换和隐式转换都是数据类型的转换;js的数据类型是弱类型的,即可以给变量赋值为任意的数据类型,当进行运算...

  • JS数据类型之间的转换

    Number,String,Boolean,Object,Undefined,Null,symbol(ES6);这...

  • JS数据类型之间的转换

    1.动态的,变量可以随意赋值let x = y ? 1 : 'a';2.自动转换类型'5' - '3' // 23...

  • 类型转化问题

    一.类型分为 基本数据类型 应用数据类型 二.基本类型之间的转换 同种数据类型之间的转换整形之间的转换: 1.大的...

  • javaScript中数据类型转换方法

    JS 数据类型转换 方法主要有三种 转换函数、强制类型转换、利用js变量弱类型转换。 1. 转换函数: js提供了...

  • 数据类型转换

    JS 数据类型转换 方法主要有三种 转换函数、强制类型转换、利用js变量弱类型转换。 1. 转换函数: js提供了...

网友评论

      本文标题:JS数据类型之间的转换

      本文链接:https://www.haomeiwen.com/subject/pmibyqtx.html