当前位置:主页 > javascript教程 > 浅谈js基本数据类型和typeof

js的基本数据类型和typeof类型

发布:2020-02-17 16:15:12 177


给寻找编程代码教程的朋友们精选了javascript相关的编程文章,网友侯锦诗根据主题投稿了本篇教程内容,涉及到js、基本数据类型、typeof、浅谈js基本数据类型和typeof相关内容,已被741网友关注,下面的电子资料对本篇知识点有更加详尽的解释。

浅谈js基本数据类型和typeof

JavaScript数据类型是非常简洁的,它只定义了6中基本数据类型

•null:空、无。表示不存在,当为对象的属性赋值为null,表示删除该属性

•undefined:未定义。当声明变量却没有赋值时会显示该值。可以为变量赋值为undefined

•number:数值。最原始的数据类型,表达式计算的载体

•string:字符串。最抽象的数据类型,信息传播的载体

•boolean:布尔值。最机械的数据类型,逻辑运算的载体

•object:对象。面向对象的基础

#当弹出一个变量时:

var aa;alert(aa); //变量定义,弹出undefined

alert(aa);    //变量未定义,undefined , 未定义的变量也是undefined


#当判断一个变量是否存在时:

var str;if( str == undefined )  //变量定义,可以这样判断

if( str == undefined )   //变量未定义,报错ReferenceError: str is not defined

所以,当判断一个变量是否不存在时,用 if( typeof str == undefined )

typeof:

alert(typeof 1);        // 返回字符串"number" 
alert(typeof "1");       // 返回字符串"string" 
alert(typeof true);       // 返回字符串"boolean" 
alert(typeof {});        // 返回字符串"object" 
alert(typeof []);        // 返回字符串"object " 
alert(typeof function(){});   // 返回字符串"function" 
alert(typeof null);       // 返回字符串"object" 
alert(typeof undefined);    // 返回字符串"undefined"

你会发现:JavaScript解释器认为null是属于object数据类型的一种特殊形式,而function(){}是function类型,也就是说函数也是一种基本数据类型,而不是对象的一种特殊形式。

实际上,在JavaScript中,函数是一个极容易引起误解或引发歧义的数据类型,它可以是独立的函数类型,又可以作为对象的方法,也可以被称为类或构造器,还可以作为函数对象而存在等。

所以,在《JavaScript权威指南》中把function被看做是object基本数据类型的一种特殊对象,另外《悟透JavaScript》和《JavaScript高级程序设计》也把函数视为对象,而不是一种基本数据类型。但是在《JavaScript语言精髓与编程实践》中却把function视为一种基本数据类型,而把null视为object类型的一种特殊形式。至于谁对谁错,看来只有根据具体情况而定了。

以上这篇浅谈js基本数据类型和typeof就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持码农之家。


参考资料

相关文章

  • JS实现的DOM插入节点实例代码

    发布:2020-01-21

    这篇文章主要介绍了JS实现的DOM插入节点操作,结合实例形式分析了javascript针对页面dom元素动态操作相关实现技巧,需要的朋友可以参考下


  • JS实现的文件拖拽上传的代码功能

    发布:2020-02-09

    这篇文章主要介绍了JS实现的文件拖拽上传功能,涉及javascript事件触发、页面元素属性动态修改等相关操作技巧,需要的朋友可以参考下


  • js实现PC端根据IP定位当前城市地理位置方法步骤

    发布:2020-01-22

    本文主要分享了js实现PC端根据IP定位当前城市地理位置的方法,具有很好的参考价值,下面跟着小编一起来看下吧


  • Jetty启动项目中引用json-lib相关类库报错ClassNotFound怎么办

    发布:2020-03-14

    今天小编就为大家分享一篇关于Jetty启动项目中引用json-lib相关类库报错ClassNotFound的解决方案,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看


  • 关于layui表格的表头不滚动的实例详解

    发布:2020-01-11

    今天小编就为大家分享一篇解决layui表格的表头不滚动的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧


  • 实例详解使用InstantClick.js让页面提前加载200ms

    发布:2020-03-16

    本篇文章主要介绍了使用InstantClick.js让页面提前加载200ms,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧


  • 详解基于node的前端项目编译时内存溢出问题

    详解基于node的前端项目编译时内存溢出问题

    发布:2022-12-09

    给网友朋友们带来一篇关于node的教程,本篇文章主要介绍了基于node的前端项目编译时内存溢出问题,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧


  • Vue.js中使用Mixins的方法详解

    发布:2020-06-03

    本篇文章主要介绍了在Vue.js中使用Mixins的方法,Vue的Mixins是非常实用的编程方式,可以使代码变得容易理解,有兴趣的一起来了解一下


网友讨论