当说到JavaScript的数据类型时,好多做了很多年web的朋友甚至还不太清楚。这应该算是最基础的js知识了。我觉得有必要在这记录一下,方便自己和大家查看。

最基本的,js有五种数据类型:undefined,boolean,string,number,object(包含null)

一切声明了而未赋值的变量的值都是undefined。

var a;             //typeof a结果为undefined

var a=true;     //typeof a结果为boolean

var a='abc';    //typeof a结果为string

var a=1;        //typeof a结果为number

var a={};      //typeof a结果为object

var a=null;    //typeof a结果为object:这是因为null被认为是不存在的对象的占位符

我们接着往下看:

undefined==null

你会发现上面这个等式的结果为true,这是为什么呢?这涉及到js最初设计时作者的一些顾虑,这里就不详细讲了,感兴趣的朋友可以去查资料,我们这里只做一个记录,简单的解释为undefined就是从null派生而来的。

当你用undefined===null比较时又会发现结果为false,这就是因为它们的初衷就不一样,undefined表示没有声明了但未初始化的值,但null表示不存在的对象。

也许,你悄悄的这样试了一下:

function f_test(){}

typeof f_test

结果为'function'

你会说你是不是少说了一种数据类型,这不是还有一种嘛。

刚开始我也有这样的疑问,但后来慢慢的明白了。

首先:函数不是数据,它只是处理数据的方法,所以不能称之为数据类型。

其次:即使我们不太负责任的认为它是数据,在以后的介绍中你也会明白函数和对象之间是有血缘关系的,因为函数的原型就是对象。

后面的介绍中我们会发现:js中一切皆为对象。

以上是我在工作学习中所学到的,理解的js的数据类型,希望对大家有所帮助,可能有的地方理解的还比较片面,欢迎大家批评指正,共同学习。

谢谢!

JavaScript数据类型的更多相关文章

  1. Javascript:Javascript数据类型详解

    要成为一个优秀的前端工程师,系统的学习Javascript,有夯实的Javascript基础,以及对语言本身的深刻的理解,是基本功.从Javascript数据类型开始,我将对Javascript知识体 ...

  2. JavaScript数据类型 typeof, null, 和 undefined

    JavaScript 数据类型 在 JavaScript 中有 5 种不同的数据类型: string number boolean object function 3 种对象类型: Object Da ...

  3. 网页、JavaScript 数据类型

    JavaScript 数据类型 一.基本数据类型: 字符串.数字.布尔.日期和时间 JavaScript 拥有动态类型 JavaScript 拥有动态类型.这意味着相同的变量可用作不同的类型: 1 v ...

  4. javascript数据类型、初始化

    Javascript数据类型有6种: 数值型数据类型(Number): 字符串(String): 布尔型数据(Boolean): 对象数据(Object): 空(Null): 未定义(Undefine ...

  5. 第九十九节,JavaScript数据类型

    JavaScript数据类型 学习要点: 1.typeof操作符 2.Undefined类型 3.Null类型 4.Boolean类型 5.Number类型 6.String类型 7.Object类型 ...

  6. Javascript数据类型共有六种

    Javascript数据类型共有六种 /* var box; alert(typeof box); // box是Undefined类型,值是undefined,类型返回的字符串是undefined ...

  7. JavaScript复习之--javascript数据类型隐式转换

    JavaScript数据类型隐式转换.一,函数类    isNaN()    该函数会对参数进行隐式的Number()转换,如果转换不成功则返回true.    alert()    输出的内容隐式的 ...

  8. 数据的分类-JavaScript数据类型

    JavaScript数据类型 1.数据类型是什么? 我们接触的绝大多数程序语言来说,把数据都进行了分类,包括数字.字符.逻辑真假:int,long,string,boolean....等等:我们都知道 ...

  9. js基础--javaScript数据类型你都弄明白了吗?绝对干货

    欢迎访问我的个人博客:http://www.xiaolongwu.cn 数据类型的分类 JavaScript的数据类型分为两大类,基本数据类型和复杂数据类型. 基本数据类型:Null.Undefine ...

  10. 每天五分钟-javascript数据类型

    javascript数据类型分为基本数据类型与复杂数据类型 基本数据类型包括:string,number,boolean,null,undefined,symbol(es6) 复杂数据类型包括:obj ...

随机推荐

  1. c语言练习

    #include<stdio.h> struct student{ ]; int No; ]; int sum; }; int strcmp(char *s, char *t) { int ...

  2. 开发微信小程序 中遇到的坑 及解决方法

    1.wx.request 只能访问 https 解决: 新建项目  不填appid  即可访问 localhost 2.页面中多重三元表达式  解析有问题 解决: <!--{{index}} { ...

  3. 【OS】实模式和保护模式区别及寻址方式

    实模式和保护模式区别及寻址方式 转载请注明出处:http://blog.csdn.NET/rosetta 64KB-4GB-64TB? 我记得大学的汇编课程.组成原理课里老师讲过实模式和保护模式的区别 ...

  4. Apache Commons BeanUtils

    http://commons.apache.org/proper/commons-beanutils/javadocs/v1.9.2/apidocs/org/apache/commons/beanut ...

  5. h5

    1. 在iPhone 手机上默认值是(电话号码显示为拨号的超链接): <meta name="format-detection" content="telephon ...

  6. Table 'performance_schema.session_variables' doesn't exist

    出现标题所示错误时设置如下参数可以解决!set @@global.show_compatibility_56=ON;

  7. link和@import导入css文件的区别

    (二者的区别其实是基础问题,但由于本人经常会忽略掉使用@import导入css文件这种方式,所以记录下来增加印象^^) 首先二者的引入方式: link:<link rel="style ...

  8. 无法启动xwindow

    1 新建一个lqx用户,执行startx命令出现: Fatal server error: PAM authentication failed, cannot start X server. perh ...

  9. 使用caffe时遇到的问题

    1.Error: (unix time) try if you are using GNU date 问题所在: 在训练train.txt图片列表位置和生成的lmbd数据不符. 解决方案: 修改tra ...

  10. 获取checkbox后面的文本内容

    http://alygle.blog.51cto.com/1922399/669040 <head> <meta http-equiv="Content-Type" ...