zoukankan      html  css  js  c++  java
  • typeof运算符

    typeof结果举例:

    //typeof部分类型运算结果
    typeof(1): number
    typeof(NaN): number
    typeof(Number.MIN_VALUE): number
    typeof(Infinity): number
    typeof("123"): string
    typeof(true): boolean
    typeof(window): object
    typeof(document): object
    typeof(null): object
    typeof(eval): function
    typeof(Date): function
    typeof(sss): undefined
    typeof(undefined): undefined

    typeof是一个一元运算符,它返回的结果 始终是一个字符串,对不同的操作数,它返回不同的结果。

    具体的规则如下:

    一、对于数字类型的操作数而言, typeof 返回的值是 number。比如说:typeof(1),返回的值就是number。

    上面是举的常规数字,对于非常规的数字类型而言,其结果返回的也是number。比如typeof(NaN),NaN在
    JavaScript中代表的是特殊非数字值,虽然它本身是一个数字类型。
    在JavaScript中,特殊的数字类型还有几种:
             Infinity                                                  表示无穷大特殊值
             NaN     特殊的非数字值
             Number.MAX_VALUE   可表示的最大数字
             Number.MIN_VALUE    可表示的最小数字(与零最接近)
             Number.NaN     特殊的非数字值
             Number.POSITIVE_INFINITY      表示正无穷大的特殊值
             Number.NEGATIVE_INFINITY       表示负无穷大的特殊值
    以上特殊类型,在用typeof进行运算进,其结果都将是number。

    二、对于字符串类型,typeof 返回的值是 string。比如typeof("123")返回的值是string。

    三、对于布尔类型,typeof 返回的值是 boolean 。比如typeof(true)返回的值是boolean。

    四、对于对象、数组、null 返回的值是 object 。比如typeof(window),typeof(document),typeof(null)返回的值都是object。

    五、对于函数类型,返回的值是 function。比如:typeof(eval),typeof(Date)返回的值都是function。

    六、如果运算数是没有定义的(比如说不存在的变量、函数或者undefined),将返回undefined。比如:typeof(sss)、typeof(undefined)都返回undefined。

    typeof运用:

    //如果函数hello()存在则执行
    try { 
    	if (typeof(eval(hello)) == "function") {
                hello();
           	}
    } catch (e) { }
    <script>
        document.write ("typeof(1): "+typeof(1)+"<br>");
        document.write ("typeof(NaN): "+typeof(NaN)+"<br>");
        document.write ("typeof(Number.MIN_VALUE): "+typeof(Number.MIN_VALUE)+"<br>")
        document.write ("typeof(Infinity): "+typeof(Infinity)+"<br>")
        document.write ("typeof("123"): "+typeof("123")+"<br>")
        document.write ("typeof(true): "+typeof(true)+"<br>")
        document.write ("typeof(window): "+typeof(window)+"<br>")
        document.write ("typeof(document): "+typeof(document)+"<br>")
        document.write ("typeof(null): "+typeof(null)+"<br>")
        document.write ("typeof(eval): "+typeof(eval)+"<br>")
        document.write ("typeof(Date): "+typeof(Date)+"<br>")
        document.write ("typeof(sss): "+typeof(sss)+"<br>")
        document.write ("typeof(undefined): "+typeof(undefined)+"<br>")
    </script>
  • 相关阅读:
    (Java实现) 洛谷 P1603 斯诺登的密码
    (Java实现) 洛谷 P1036 选数
    (Java实现) 洛谷 P1036 选数
    (Java实现) 洛谷 P1012 拼数
    (Java实现) 洛谷 P1012 拼数
    (Java实现) 洛谷 P1028 数的计算
    (Java实现) 洛谷 P1028 数的计算
    (Java实现) 洛谷 P1553 数字反转(升级版)
    8.4 确定两个日期之间的月份数或年数
    (Java实现) 洛谷 P1553 数字反转(升级版)
  • 原文地址:https://www.cnblogs.com/sjshare/p/5126388.html
Copyright © 2011-2022 走看看