精华内容
下载资源
问答
  • javascript中NaN用法

    2014-05-13 10:31:00
    NaN是一个特殊的数值,任何数值除以0会返回NaN,不会影响其他代码的执行(其实为0/0为NaN,正数除以0得到infinity,负数除以0得到负的infinity) 它的特点为: 1.任何涉及NaN的操作都返回NaN 2.NaN与任何值都不相等...

    NaN是一个特殊的数值,任何数值除以0会返回NaN,不会影响其他代码的执行(其实为0/0为NaN,正数除以0得到infinity,负数除以0得到负的infinity)

    它的特点为:

    1.任何涉及NaN的操作都返回NaN

    2.NaN与任何值都不相等,包括NaN

    它涉及到的函数为isNaN();该函数接受一个参数,该参数可以是任何类型

     

    转载于:https://www.cnblogs.com/wenyan/p/3724952.html

    展开全文
  • 主要介绍了在JavaScript中使用NaN值的方法,是JS入门学习的基础知识,需要的朋友可以参考下
  • JS中NaN定义与用法

    2018-02-09 08:51:25
    NaN,即非数值(Not a Number)是一个特殊的值,这个数值表示本来要返回数值的操作数未返回数值的情况(这样就不会抛出错误了)。比如在其他语言任何数值除以0都会导致错误而终止程序执行。但是在ECMAScript,会...

    NaN,即非数值(Not a Number)是一个特殊的值,这个数值表示本来要返回数值的操作数未返回数值的情况(这样就不会抛出错误了)。比如在其他语言中

    任何数值除以0都会导致错误而终止程序执行。但是在ECMAScript中,会返回出特殊的值,因此不会影响程序的执行。


    var box=0/0;                //NaN;

    var box=12/0;             //Infinity;

    var box=12/0*0;         //NaN;


    可以通过Number.NaN得到NaN的值,任何与NaN进行运算的结果均会为NaN,NaN与自身不相等(NaN不与任何值相等)。

    alert(Number.NaN);  //NaN

    alert(NaN+1);            //NaN

    alert(NaN==NaN);   //false


    ECMAScript提供isNaN()函数,用来判断这个是不是NaN。isNaN()函数在接收到一个值后,会尝试将这个值转换成数值。

    alert(isNaN(NaN));    //true;

    alert(isNaN(25));        //false  25是个数值

    alert(isNaN('25'));      //false  '25'是一个字符串数值,可以转换成数值

    alert(isNaN('Lee'));   //true  'Lee'是个字符串,不能转化成数值

    alert(isNaN(true));    //false  true可以转换成1

    isNaN()函数也适用于对象。在调用 isNaN()函数过程中,首先会调用 valueOf()方法,然
    后确定返回值是否能够转换成数值。如果不能,则基于这个返回值再调用 toString()方法,
    再测试返回值

    var box={
    toString:function(){
    return 'lee';
    }
    };
    alert(isNaN(box));

    有三个函数可以把非数值转换成数值:Number()、parseInt()和parseFloat()。Number()是转换型函数,可以用于任何数据类型,而另外两个则

    专门用于把字符串转换成数值。

    alert(Number(true));      //1,Boolean类型的true和false分别转换成1和0
    alert(Number(25));        //25,数值类型直接返回
    alert(Number(null));      //0,空对象返回0
    alert(Number(undefined));//NaN,undefined返回NaN


    如果是字符串增寻以下规则:

    1、只包含数值的字符串,会直接转换成十进制数值,如果包含前导0,即会自动去掉

    alert(Number('456'));  //465
    alert(Number('070'));  //70

    2、只包含浮点数值的字符串,会直接转换成浮点数值,如果包含前导和后导0,即会自动去掉。

    alert(Number('08.50')); //8.5

    3、如果字符串为空,那么直接转换成0.

    alert(Number(''));  //0

    4、如果不是以上三种字符串类型,则会返回NaN。

    alert(Number('lee123')); //NaN

    5、如果是对象,首先会调用valueOf()方法,然后确定返回值是否能够转化成数值。如果转化的结果是NaN,则基于这个返回值再调用toString()方法,在测试返回值。

    var box={

      toString:function(){

        return '123';   

      }

    };

    alert(Number(box));  //123


    var box={
      toString:function(){
        return 'lee';   
      }
    };
    alert(Number(box));  //NaN


    由于Number()函数在转换字符串时比较复杂且不够合理,因此在处理整数的时候更常用的是parseInt()。


    alert(parseInt('465lee'));             //465,返回整数部分

    alert(parseInt('lee465lee'));       //NaN,如果第一个不是数值,就会返回NaN

    alert(parseInt('12lee56lee'));    //12,从第一个数值开始取,到最后一个连续数值结束

    alert(parseInt(56.12));               //56,小数点不是数值,会被去掉。

    alert(parseInt(''));                       //NaN,空返回NaN

    parseInt()除了可以识别十进制数,开可以识别八进制和十六进制。


    alert(parseInt('0xA'));         //10,十六进制

    alert(parseInt('070'));         //56,八进制

    alert(parseInt('0xALee'));  //100,十六进制,Lee被自动过滤


    ECMAScript为parseInt()提供了第二参数,用于解决各种的进制转换。

    alert(parseInt('0xAF'));                     //175,十六进制

    alert(parseInt('AF',16));                 //157,第二参数指定十六进制,可以去掉0x前导

    alert(parseInt('AF'));                      //NaN,这里看作字符串,理所当然NaN

    alert(parseInt('101010101',2));  //314,二进制转换

    alert(parseInt('70',8));                  //56,八进制转换


    parseFloat()是用于浮点数值的转换,和parseInt()一样,从第一位解析到浮点数值位置。

    alert(parseFloat('123Lee'));   //123,去掉不能识别的部分
    alert(parseFloat('0xA'));         //0,不认识十六进制
    alert(parseFloat('123.4.5'));  //123.4,只认一个小数点
    alert(parseFloat('0123.400')); //123.4去掉前后导
    alert(parseFloat('1.234e7'));   //12340000,把科学计数法转换成普通数值
    展开全文
  • javaScript NaN用法

    2016-07-23 01:16:18
    <title>undefined window.onload=function() { var text1 = document.getElementById('txt1'); var text2 = document.getElementBy
    <html>
    <head>
    <meta charset="utf-8">
    <title>undefined
    </title>
    <script>
        window.onload=function()
        {
            var text1 = document.getElementById('txt1');
            var text2 = document.getElementById('txt2');
            var btn1 = document.getElementById('btn1');
            var a = text1.value;
            var b = text2.value;
            btn1.onclick=function()
            {
            if(isNaN(parseInt(a)))
            alert("abuxing");
            if(isNaN(parseInt(b)))
            alert("bbuxing");
            else{
                alert(parseInt(a)-parseInt(b));
                }
            };
        };
    </script>
    </head>
    <body>
    <input type="text" id="txt1"/>
    <input type="text" id="txt2"/>
    <input type="button" id="btn1" value="求差"/>
    
    </body>
    </html>
    展开全文
  • 我也在FreeCodeCamp上碰到这样一道题: 删除数组的所有假值。 在JavaScript中,假值有false、null、0、”“、undefined 和 NaN。...以上所述是小编给大家介绍的JavaScript中严格判断NaN方法,希望对大家有所
  • js NaN

    千次阅读 2016-09-05 10:02:11
    NaN “Not a Number”。出现这个数值比较少见,以至于我们可以不理它。当运算无法返回正确的数值时,就会返回“NaN”值。NaN 值非常特殊,因为它“不是数字”,所以任何数跟它都不相等,甚至 NaN 本身也不等于 NaN ...

    NaN “Not a Number”。出现这个数值比较少见,以至于我们可以不理它。当运算无法返回正确的数值时,就会返回“NaN”值。NaN 值非常特殊,因为它“不是数字”,所以任何数跟它都不相等,甚至 NaN 本身也不等于 NaN 。
    isNaN()
    计算一个参数,检查它是否为数值。
    语法
    isNaN(testValue)
    参数

    testValue :你想要测试的值。

    描述
    isNaN() 是一个内建的 JavaScript 函数。它并不是与任何对象关联的方法,而仅仅是语言的一部分。

    在支持 NaN 的平台上,parseFloat 和 parseInt 函数将在计算并不是数值的值时返回“NaN”。isNaN() 在传递过来的参数是“NaN”时返回真,否则返回假。


    示例
    下面的例子计算 floatValue,确定它是否为数值,以便调用相应的过程:

    floatValue=parseFloat(toFloat)
    if (isNaN(floatValue)) {
           notFloat()
    } else {
           isFloat()
    }
    展开全文
  • Js中NaN不等于NaN

    2020-07-09 11:10:50
    断点调试之后发现无论如何都不相等,方法parseInt()返回的结果确实是NaN,但是与右侧的NaN比较返回的结果却是false,这时候才突然想起来NaN有不等于自身的特性,所以简单收集一下资料做个整理 原因 了解原因之前...
  • JS中NaN

    万次阅读 多人点赞 2019-09-23 20:52:38
    JavaScript中NaN是一个特殊的数字值(typeof NaN的结果为number),是not a number的缩写,表示不是一个合法的数字。 1. NaN的产生: 一个不能被解析的数字 Number('abc') // NaN Number(undefined) // NaN ...
  • JavaScript中NaN

    2020-12-17 16:31:06
    JavaScript中NaN 含义 NaNJavaScript 的特殊值,表示“非数字”(Not a Number),主要出现在将字符串解析成数字出错的场合。 5 - 'x' // NaN 上面代码运行时,会自动将字符串x转为数值,但是由于x不是数值...
  • javascript中NaN、null、undefined三者比较: 相同点: 在js中NaN、null、undefined都会被当做false来处理 三者的具体解释(用法): 1.NaN 非数值 js尝试把一些非数值数据当做数值处理,无法得到数值时返回值...
  • js中NaN

    2020-03-16 14:39:10
    逆战班学习心得 NaN 是英语“not a number”的意思,即“不是一个数”。...JavaScript中用一个数与0求模将得到NaN,因为是没有意义的,结果“不是一个数”。 console.log(10%0);//NaN 人们通常不会刻意使用NaN,往...
  • Undefined 类型 该类型只有一种值undefined,一下三种情况使用typeof返回类型为undefined:  1)当变量为定义 2)当变量未初始化 3)函数无明确返回值(函数没有返回值时返回的都是undefined) undefined 并不...
  • JavaScript ,整数和浮点数都统称为 Number 类型 。除此之外,Number 类型还有一个很特殊的值,即 NaN 。它是 Number 对象上的一个静态属性,可以通过 Number.NaN 来访问 。 console.log(Number.NaN); // NaN ...
  • 你可以这样做:a = a || 0…将从任何“falsey”值转换为0 。“错误”的价值是:falsenullundefined0"" (空string)NaN (不是数字)或者,如果你喜欢:a = a ?...a = +a || 0这使用一元+运算符来尝试将...
  • (1) window.isNaN(NaN) // true (2) window.isNaN(123) // false 注意: window.isNaN 只对数值有效,如果传入其他值,会被先转成数值。比如,传入字符串的时候,字符串会被先转成NaN,所以最后返回true,这一点要...
  • js中数据转换NaN属性,isNaN()的用法 一、NaN属性  1、NaNNaN:not a number 不是一个数字 但是数字类型  var a = Number('abc');  alert(a); //NaN  alert(typeof a); //number  2、NaN
  • JavascriptNaN

    2018-11-27 11:07:35
    在 MDN 的 NaN 文章有描述: 全局属性 NaN 表示 Not-A-Number 的值。 NaN 是一个全局对象的属性。 NaN 属性的初始值就是 NaN,和 Number.NaN 的值一样。 在 ES5 NaN 属性是一个不可配置(non-...
  • NaN,不是一个数字,是一种特殊的值来代表不可表示的值,使用typeof或其他任何与之比较的处理方式,‘NaN’则会引起一些混乱,  一些操作会导致NaN值的产生。这里有些例子: Math.sqrt(-2) Math.log(-1) 0/0 ...
  • NaN(Not a Number,非数)是...在javascript中NaN是代表非数字值的特殊值,可以使用Number的NaN属性来指示某个值不是数字。我们也可以使用 isNaN() 全局函数来判断一个值是否是 NaN 值。语法:Number.NaN说明:Num...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 48,669
精华内容 19,467
热门标签
关键字:

js中的nan用法