• JS 中 constructor属性的用法


    typeof返回一个表达式的数据类型的字符串,返回结果为js基本的数据类型,包括number,boolean,string,object,undefined,function

    js中constructor较少使用,如果不是搜索到相关construtor相关的资料,我之前从没有注意到js还有这个函数。

    使用typeof的一个不好的地方就是它会把Array还有用户自定义函数都返回为object

    1<script type="text/javascript">
    2<!–
    3var j=2;
    4alert(typeof(j));//number
    5alert("j.constructor:" + j.constructor);//function …
    6alert(typeof(j.constructor));//function
    7//–>
    8</script>

    可以看到js.constructor返回的是一些字符串,大家都应该能看到这是一个function类型,此例为Number()为Number对象的构造函数,Number()用于将其参数转换为数字number类型,并返回转换结果(若不能转换则返回 NaN)。

    因此在以后的js判断数据类型时可以使用以下方式来得到其详细数据类型

    1if((typeof o=="object") && (o.constructor==Number)){
    2
    3}


    这里还要注意,constructor只能对已有变量进行判断,而typeof则可对未声明变量进行判断(返回undefined)。

    {}.constructor为function Object(){[Native code]}

     

  • 相关阅读:
    Spring Boot 搭建项目阶段Group和Artifact的含义
    设置Mysql数据库账号密码以及时区
    反射
    线程与进程
    网络编程
    队列和栈
    linux下的mysql
    积累的关于linux的安装卸载软件基本命令
    各种url编码
    解决浏览器传值乱码
  • 原文地址:https://www.cnblogs.com/jt880807/p/2644253.html
Copyright © 2020-2023  润新知