1.返回数据类型

  undefined

  string

  boolean

  number

  symbol(ES6)

  Object

  Function

2.强制类型转换

Number(参数)把任何类型转换成数值类型

parseInt(参数1,参数2)将字符串转换成整数

parseFloat()将字符串转换成浮点数字

string(参数):可以将任何类型转换成字符串

Boolean()可以将任何类型的值转换成布尔值

3.隐式类型转换

(1).四则运算

    加法运算符+是双目运算符,只要其中一个是string类型,表达式的值便是一个String。

    对于其他的四则运算,只有其中一个是Number类型,表达式的便是一个Number。

    对于非法字符的情况通常会返回NaN:'1'*'a'    // => NaN,这是因为parseInt(a)值为NaN,1*NaN还是NaN

(2).判断语句

    判断语句中的判断条件需要是 Boolean类型,所以条件表达式会被隐式转换为Boolean。其转换规则则同Boolean的构造函数。比如:

            var obj = {};if(obj){

              while(obj);

            }

(3).Native代码调用

    JavaScript宿主环境都会提供大量的对象,它们往往不少通过JavaScript来实现的。JavaScript给这些函数传入的参数也会进行隐式转换。例如BOM提供的alert方法接受String类型的参数:alert({a:1});  //=>[object Object]

posted on 2017-03-07 21:40  花花爱花花  阅读(18657)  评论(0编辑  收藏  举报