JavaScript数据类型隐式转换。
一,函数类
    isNaN()
    该函数会对参数进行隐式的Number()转换,如果转换不成功则返回true。
    alert()
    输出的内容隐式的转换为字符串。

二,运算符类。
    1,算术运算符。
       - * / %
    如果操作数不是数值,将会隐式的调用Number()函数。按照这个函数的转换规则进行转换。
    如果转换不成功,整个表达式返回NaN。
       + 
    如果操作数都是数值,然后进行相加。
    任何数据类型和字符串相加,都会隐式的调用他们的toString()方法,然后返回他们拼接的结果。
    如果操作数都是布尔值,那么进行Number()转换,false为0,true为1,进行相加。

2,关系运算符
       关系运算符的操作数可以是任何的类型,如果操作数不是数值类型,将会隐式的转换。
          (1)他运算的结果都是布尔值
   (2)都是字符串的时候,他会先转换成ASCII码然后进行比较大小。
   (3)都是数值的时候,他会正常的比较。
          (4)当一个字符串,另一个是数值的时候,他会把字符串尝试转换成数值类型,然后进行比较。
      如果不能转换成数值类型, 则会返回NaN(not a number),返回一个假。
          (5)undefined null
   (6)如果两个都是数值型字符串,那么他们也只会比较第一个。
   (7)如果一个数值和布尔值进行比较,会把布尔值转换成数值再进行比较,true为1,false为0
三,等性运算符。
     A. == 只比较值是否相等。
      (1).比较字符串的时候,是比较他们的ASCII码是否相等。
      (2).比较两个数值的时候,是比较他们的数值是否相等。
      (3).比较函数的时候,判断他们的位置是否相等。
     B. === 不但比较他们的值是否相等,还要比较类型是否相等。

四,语句类
    if(表达式){
    }else{
    }

三元运算符
    格式:var 变量=Boolean experssion?真值:假值
    while(){}
    if语句和三元表达式里面的表达式会隐式的调用Boolean函数,按照这个函数的转换规则,转换为相应的布尔值。

JavaScript复习之--javascript数据类型隐式转换的更多相关文章

  1. js数据类型隐式转换问题

    js数据类型隐式转换 ![] == false //true 空数组和基本类型转换,会先[].toString() 再继续比较 ![] == [] //true ![] //false [] == [ ...

  2. js中的数据类型隐式转换的三种情况

    js的数据类型隐式转换主要分为三种情况: 1. 转换为boolean类型 2. 转换为number类型 3. 转换为string类型 转换为boolean类型 数据在 逻辑判断 和 逻辑运算 之中会隐 ...

  3. Oracle数据类型隐式转换小析

    测试使用环境:oracle 11g r1 平常写sql语句时,大大咧咧,不太注意和数字有关的数据类型,有时例如 where c1=111 和 where c1='111'这样混用,却不曾想这里面另有蹊 ...

  4. SQL Server有意思的数据类型隐式转换问题

    写这篇文章的时候,还真不知道如何取名,也不知道这个该如何将其归类.这个是同事遇到的一个案例,案例比较复杂,这里抽丝剥茧,仅仅构造一个简单的案例来展现一下这个问题.我们先构造测试数据,如下所示: CRE ...

  5. JavaScript —— 常用数据类型隐式转换

    公用方法: let checkType = (data) => { if(data){ console.log(true); }else{ console.log(false); } } 一.字 ...

  6. JavaScript学习笔记——数据类型强制转换和隐式转换

    javascript数据类型强制转换 一.转换为数值类型 Number(参数) 把任何的类型转换为数值类型 A.如果是布尔值,false为0,true为1 B.如果是数字,转换成为本身.将无意义的后导 ...

  7. javascript笔记整理(数据类型强制/隐式转换 )

    A.数据类型强制转换 1.转换为数值类型 Number(参数) 把任何的类型转换为数值类型 A.如果是布尔值,false为0,true为1 var a=false;alert(Number(a)); ...

  8. JavaScript的六种数据类型与隐式转换

    一.六种数据类型 javascript的数据类型包括: (1)基本数据类型:number.string.boolean.null.undefined (2)对象:object object又包括Fun ...

  9. JavaScript的隐式转换

    原文:JavaScript的隐式转换 JavaScript的数据类型分为六种,分别为null,undefined,boolean,string,number,object.object是引用类型,其它 ...

随机推荐

  1. 《Effective Objective-C 2.0》 读后总结

    感觉自己最近提升很慢了.然后去找了一些面试题看看.发现自己自大了.在实际开发中,让我解决bug.编写功能,我有自信可以完成.但是对项目更深层的思考,我却没有.为了能进到自己的目标BAT.也为了让自己更 ...

  2. java GUI简单记事本

    代码: import java.awt.*; import java.awt.event.*; import java.io.*; class MyMenu { //定义该窗体所需的组件,方便其他函数 ...

  3. 微信公众号开发总结(Node.js + express + winston)

    关于订阅号.服务号.企业号 官方定位 订阅号:主要偏于为用户传达资讯(类似报纸杂志),认证后每天可以群发一条消息,可达到宣传效果,构建与读者之间更好的沟通和管理模式. 服务号:主要偏于服务交互(类似银 ...

  4. [UWP]附加属性1:概述

    1. 什么是附加属性(attached property ) 附加属性依赖属性的一种特殊形式,常见的Grid.Row,Canvas.Left都是附加属性. /// <summary> // ...

  5. linux中的软连接和硬连接

    1. 创建软连接的方法 ln -s /path/to/original /path/to/linkName 当我们对软连接文件进行修改后,对应的修改也会反映到原始的文件(反之亦然). 当我们删除软连接 ...

  6. window7 32位安装Oracle11g

    http://www.cnblogs.com/wangsaiming/p/3573509.html

  7. Linux学习笔记(1)

    一.介绍 Linux系统作为服务器操作器的两大优点是其稳定性以及安全性:常见的Linux系统有以下几种: Debian(1993年下半年出的Linux分支) Ubuntu(目前互联网公司使用的比较多的 ...

  8. SpringMVC 集成velocity

    前言 没有美工的时代自然少不了对应的模板视图开发,jsp时代我们用起来也很爽,物极必反,项目大了,数据模型复杂了jsp则无法胜任. 开发环境 idea2016.jdk1.8.tomcat8.0.35 ...

  9. 【Zookeeper】源码分析之Leader选举(二)

    一.前言 前面学习了Leader选举的总体框架,接着来学习Zookeeper中默认的选举策略,FastLeaderElection. 二.FastLeaderElection源码分析 2.1 类的继承 ...

  10. ERP中关于审批时速度太慢的SQL优化

    在给客户实施ERP的时候,经常遇到客户的请购单审批时,特别慢,一个阶段要转个40.50秒左右,3个阶段就差不多要3分钟,效率很低. 检查方法如下: 1.数据库跟踪语句,找出执行时间较久的语句,结果如下 ...