JS中隐式数据类型转换

原创 2015年11月18日 20:26:39

我们知道,运算符有 6大类:1,数学运算符2,关系运算符也称比较运算符3,赋值运算符4,逻辑运算符5,一元运算符(typeof()等)6,三元运算符(var 变量=布尔表达式值?为真的情况执行的语句:为假的情况执行的语句;

那么在运用这些运算符时总是会涉及到变量的类型,例如1,数学运算符如果用一个字符串来进行数学运算会发生什么呢?

代码如下:<!DOCTYPE html>
<html>
<meta charset="utf-8">
<head>
<title></title>
</head>
<body>
</body>
     <script type="text/javascript">
         var t="aa";
         var s="bb";
         var c=s/t;
         alert(c);
</script>
</html>
</script>
</html>

结果弹出Nan;这里就是首先调用了数据类型的隐式转换,number(t);转换失败;弹出 Not a number;

又例如:

<!DOCTYPE html>
<html>
    <meta charset="utf-8">
         <head>
             <title></title>
        </head>
<body>


</body>
     <script type="text/javascript">
         var t="2";
         var s=2;
         var c=s/t;    //此处会进线隐式的数据类型转换将字符串“2”转换为数字2
         alert(c);
</script>
</html>
</script>
</html>

弹出:1

同理,我们再进行其他的运算符时都会进行隐式的数据类型转换,关系运算符会先转换为数字进行比较,逻辑运算符会先转换为布尔值;

版权声明:本文为博主原创文章,未经博主允许不得转载。

atoi — 隐式数据类型转换

隐式数据类型转换
  • BlackOmega
  • BlackOmega
  • 2016年05月18日 14:04
  • 473

8种基本数据类型和运算(隐式转换和强制转换)

java中的8种基本数据类型:byte,short,char,int,long,float,double,boolean。 byte  1 个字节,取值范围:-128~127,      8 位; s...
  • yshunb
  • yshunb
  • 2016年04月04日 09:26
  • 1071

隐式数据类型转换

一, 小换大可以,大换小不行,因为有可能溢出。 例子: Double 与 float之间,float 变成double没问题,但是double换成float有可能溢出,可能double里面含...
  • Ameir_yang
  • Ameir_yang
  • 2017年10月04日 20:21
  • 97

js 全局变量 局部变量 隐式声明 显式声明,作用域

JS 中使用 var 声明变量,也可以不使用var 这样定义的就是全局变量,js解释器执行时首先在全局构建一个全局对象,我们写的全局变量就是为这个全局对象做准备的,就是为了该对象的属性读取,可以使用t...
  • java_goodstudy
  • java_goodstudy
  • 2016年05月25日 15:56
  • 1140

Javascript函数调用隐式对象arguments

Js在函数调用时会创建一个隐式的的对象arguments。 arguments包含了函数调用时实际传递给函数的参数数组对象。 App = {}; App.fun0 = function(){ ...
  • xufeng0991
  • xufeng0991
  • 2015年05月07日 12:09
  • 1246

Oracle DB 隐式和显示数据类型转换

转换函数 除了Oracle  数据类型,还可以使用美国国家标准协会(ANSI) 、DB2 和SQL/DS  数据类型定义Oracle DB 中表的列。但是,Oracle Server  会在...
  • rlhua
  • rlhua
  • 2013年10月17日 09:22
  • 8245

oracle中的隐式数据类型转换

和其他的关系型数据库一样,oracle中也能进行一些隐式的数据转换,这对我们写SQL语句有非常用,我们可以不必麻烦地手动转化很多类型的字符。虽然前面我们介绍了一些使用例如to_char,to_date...
  • dongzhouzhou
  • dongzhouzhou
  • 2013年01月02日 16:05
  • 6453

一道面试题引发的对 JS 类型转换的思考

最近群里有人发了下面这题: 实现一个函数,运算结果可以满足如下预期结果: add(1)(2) // 3 add(1, 2, 3)(10) // 16 add(1)(2)(3)(4)...
  • zhuguorong11
  • zhuguorong11
  • 2017年03月26日 20:09
  • 272

Scala教程(十七)Scala隐式类型转换详解

隐式方法:方法命名 :file为源方法名 2 目标方法名,例如:file2RichFile定义隐式转换的方法名。隐式转换必须有:implicit关键字,需要和参入参数类型一致。 隐式参数:在参数前添加...
  • yuan_xw
  • yuan_xw
  • 2015年11月03日 17:46
  • 4176

JS各种类型问题与隐式类型转换

由于JS中的数据类型是松散类型,并且其在进行操作符运算时并不会像C++和Java一样先检测数据类型,而是隐式的进行数据类型转换,返回值有时并不如我们想象的那样。尤其是对于像&&操作符涉及到短路操作,并...
  • Debbie1993
  • Debbie1993
  • 2016年03月24日 16:30
  • 1500
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JS中隐式数据类型转换
举报原因:
原因补充:

(最多只允许输入30个字)