浅谈js基本数据类型和typeof


Posted in Javascript onAugust 09, 2016

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就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Prototype使用指南之array.js
Jan 10 Javascript
分享27款非常棒的jQuery 表单插件
Mar 28 Javascript
javascript 常用功能总结
Mar 18 Javascript
循环 vs 递归浅谈
Feb 28 Javascript
jquery中html、val与text三者属性取值的联系与区别介绍
Dec 29 Javascript
js取得html iframe中的元素和变量值
Jun 30 Javascript
详解BootStrap中Affix控件的使用及保持布局的美观的方法
Jul 08 Javascript
Vue.js 实现微信公众号菜单编辑器功能(二)
May 08 Javascript
VUE2.0+ElementUI2.0表格el-table循环动态列渲染的写法详解
Nov 30 Javascript
vue.draggable实现表格拖拽排序效果
Dec 01 Javascript
node实现生成带参数的小程序二维码并保存到本地功能示例
Dec 05 Javascript
微信小程序定义和调用全局变量globalData的实现
Nov 01 Javascript
js中判断变量类型函数typeof的用法总结
Aug 09 #Javascript
详解js实现线段交点的三种算法
Aug 09 #Javascript
完美解决jQuery符号$与其他javascript 库、框架冲突的问题
Aug 09 #Javascript
jQuery对checkbox 复选框的全选全不选反选的操作
Aug 09 #Javascript
引用jquery框架后出错的解决方法
Aug 09 #Javascript
js实现常用排序算法
Aug 09 #Javascript
VC调用javascript的几种方法(推荐)
Aug 09 #Javascript
You might like
php获取qq用户昵称和在线状态(实例分析)
2013/10/27 PHP
php+mysqli使用预处理技术进行数据库查询的方法
2015/01/28 PHP
JS代码格式化和语法着色V2
2006/10/14 Javascript
JavaScript toFixed() 方法
2010/04/15 Javascript
AngularJS基础学习笔记之指令
2015/05/10 Javascript
实例代码讲解jquery easyui动态tab页
2015/11/17 Javascript
JavaScript设计模式开发中组合模式的使用教程
2016/05/18 Javascript
Angular4学习教程之DOM属性绑定详解
2018/01/04 Javascript
详解Vue2.0配置mint-ui踩过的那些坑
2018/04/23 Javascript
vue+axios+element ui 实现全局loading加载示例
2018/09/11 Javascript
python实现在目录中查找指定文件的方法
2014/11/11 Python
用 Python 爬了爬自己的微信朋友(实例讲解)
2017/08/25 Python
详谈Python中列表list,元祖tuple和numpy中的array区别
2018/04/18 Python
python 发送和接收ActiveMQ消息的实例
2019/01/30 Python
python3 线性回归验证方法
2019/07/09 Python
Python实现线性插值和三次样条插值的示例代码
2019/11/13 Python
详解从Django Allauth中进行登录改造小结
2019/12/18 Python
python 实现读取csv数据,分类求和 再写进 csv
2020/05/18 Python
python和c语言哪个更适合初学者
2020/06/22 Python
使用css如何制作时间ICON方法实践
2012/11/12 HTML / CSS
加拿大最大的五金、家居装修和园艺产品商店:RONA
2017/01/27 全球购物
加拿大户外探险购物网站:SAIL
2020/06/27 全球购物
几个Shell Script面试题
2012/08/31 面试题
校班主任推荐信范文
2013/12/03 职场文书
物业工作计划书
2014/01/10 职场文书
坚定理想信念心得体会
2014/03/11 职场文书
项目建议书范文
2014/05/12 职场文书
医学求职信
2014/05/28 职场文书
病人家属写给医院的感谢信
2015/01/23 职场文书
妈妈再爱我一次观后感
2015/06/08 职场文书
为自己工作观后感
2015/06/11 职场文书
公司回复函格式
2015/07/14 职场文书
2016年教师节感恩寄语
2015/12/04 职场文书
中学生打架《检讨书》范文
2019/08/12 职场文书
Java基础——Map集合
2022/04/01 Java/Android
Tomcat安装使用及部署Web项目的3种方法汇总
2022/08/14 Servers