alert('2'===2);  //这个结果是false,首先三个等号要比较数据类型,字符串和整数不相等

alert('2'==2);    //这个结果是true,因为是两个等号,所以不会比较数据类型,字符串‘2’会自动转换成数字2,所以相等
alert(‘10’>9);  //这个结果是ture,首先字符串和数字的比较,字符串会自动转换成数字,所以结果是true。

alert(‘10’>’9‘);//这个结果是false,首先是字符串和字符串的比较,又是数字,我们提取每个字符串第一位的数字,

第一个‘10’第一位是1,第二个是9,所以结果是false。

alert(‘10’>’ 9‘)//注意结果是true,第一个提取的结果是1,第二个我们先空格了一下,所以结果是0,所以是false

当提示出NaN的时候,代表出现了非法操作,还有isNaN的用法

var a=Number('abc');

alert(a);  //结果是NaN,
alert(typeof a);// number,一旦用了typeof的时候,判断的是类型,因为用Number定义的,所以是number
if(a){    
alert("true");
}else{
alert('false');//  结果是false,任何NaN的结果都是false
}

IsNaN的用法

//isNaN()如果是数字,返回false,如果不是数字,返回false。,底层用的是Number();
alert(isNaN(true));//ture转换成1所以是false
alert(isNaN('aa'));//true
alert(isNaN(1));
alert(isNaN([]));//转换成数字0,因为数组是空的,所以返回false

<input type="text" />
<input type="button" value="判断是不是数字"/>

/*//isNaN()如果是数字,返回false,如果不是数字,返回false。,底层用的是Number();
alert(isNaN(true));//ture转换成1所以是false
alert(isNaN('aa'));//true
alert(isNaN(1));
alert(isNaN([]));//转换成数字0,因为数组是空的,所以返回false*/
window.onload=function(){
var arr=document.getElementsByTagName('input');
var str='';
arr[1].onclick=function(){
str=arr[0].value;
if(isNaN(str)){
alert(str+'不是数字')
}else{
alert(str+'是数字')
}
}
}

JS隐形数据类型转换注意事项的更多相关文章

  1. JS中数据类型转换

    JS中数据类型转换汇总 JS中的数据类型分为 [基本数据类型] 数字 number 字符串 string 布尔 boolean 空 null 未定义 undefined [引用数据类型] 对象 obj ...

  2. JS的数据类型转换

    JS 数据类型转换 方法主要有三种 转换函数.强制类型转换.利用js变量弱类型转换. 1. 转换函数: js提供了parseInt()和parseFloat()两个转换函数.前者把值转换成整数,后者把 ...

  3. JS 之 数据类型转换

          首先我们来简单了解一下JS中的数据类型,JavaScript拥有字符串.数字.布尔.数组.对象.Null.Undefiend 6中数据类型.同一时候,JavaScript拥有动态类型. 也 ...

  4. Java学习:数据类型转换注意事项

    数据类型的转换 当数据类型不一样时,将会发生数据类型转换. 自动类型转换(隐式) 1.特点 :代码不需要进行特殊处理,自动完成. 2.规则 :数据范围从小到大. //左边是long类型,右边是默认的i ...

  5. js基础---数据类型转换

    js中数据类型: 简单数据类型: number:233,-34,0x23,023 string:"hello"或者'hello' boolean:true.false undefi ...

  6. js 的数据类型转换

    一直对js的类型转换一直半解,今天理一下思路,首先说一下几个特殊的数值 null null是特殊的object,故 typeof null 返回object, null派生于undefined ,故 ...

  7. java中数据类型转换注意事项

    1.byte.short.char这三种类型互相做数学运算时都会先提升为int类型后再做运算 char a = 'A'; short b = 1; int num = a + b;//a和b在做运算前 ...

  8. {}+[] = ? 和 []+{} = ? 浅谈JS数据类型转换

    参加公司技术嘉年华第一季(前端.服务端)的间隙,陈导问了我一个问题:{}+[] 和 []+{}两个表达式的值分别是什么?根据我的理解我觉得结果应该都是"[object Object]&quo ...

  9. JS 里的数据类型转换

    JS的数据类型转换 一.js中的数据类型Js中的数据类型一共有六种,即number,string,boolean,underfine,null,object. 1.Number Number数据类型指 ...

随机推荐

  1. C#中POST数据和接收的几种方式(抛砖引玉)

    POST方式提交数据,一种众所周知的方式: html页面中使用form表单提交,接收方式,使用Request.Form[""]或Request.QueryString[" ...

  2. getchar fflush 的分析笔记

    问题描述: 统计从键盘输入的若干个字符中有效字符的个数,以换行符作为输入结束.有效字符是指第一个空格符前面的字符,若输入字符中没有空格符,则有效字符为除了换行符之外的所有字符. 示例代码: #incl ...

  3. java解析xml的三种方法

    java解析XML的三种方法 1.SAX事件解析 package com.wzh.sax; import org.xml.sax.Attributes; import org.xml.sax.SAXE ...

  4. 导出excel报错

    System.ComponentModel.Win32Exception: 拒绝访问 1.问题现象: foreach (System.Diagnostics.Process thispro in Sy ...

  5. Autoit中用PrintWindow替代ScreenCapture函数实现截图

    想截取躲在后面的窗体或控件,找到了PrintWindow函数,幸运的是Autoit3也对此进行了封装以方便使用. 于是乎,将帮助文件里的_WinAPI_PrintWindow()实例改写了一下,以替代 ...

  6. python模块引用问题(比较杂乱,懒得整理)

    1 在stackoverflows摘抄 If the import module in the same dir, use e.g: from . import core If the import ...

  7. erlang 故障排查工具

    系统级别perf top, dstat -tam, vtune 都能很好分析beam 瓶颈,本文主要erlang 级别排查: 1. 反编译 确认线上运行代码是否正确,reltools没掌握好,升级偶尔 ...

  8. Docker - 技术栈

    与传统的方式类似,构建及运行Docker容器与在一台虚拟机上构建和运行程序的方式是相似的,只是使用了一套新的工具以及技术. 与虚拟机不同的是,Docker容器将宿主机与应用程序或者服务隔离,从而提高了 ...

  9. Install PIL with Jpeg support on Raspbian Jessie

    参考: https://www.raspberrypi.org/forums/viewtopic.php?f=91&t=79379 在 树莓派(Raspbian Jessie) 上安装djan ...

  10. 关于httpd服务的安装、配置

    httpd是Apache超文本传输协议(HTTP)服务器的主程序.通常,httpd不应该被直接调用,而应该在linux系统中由 apachectl 调用.接下来我们将了解有关httpd服务的安装与配置 ...