浅谈js基本数据类型和typeof

JavaScript018

浅谈js基本数据类型和typeof,第1张

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

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

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

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

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

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

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

#当弹出一个变量时:

var

aaalert(aa)

//变量定义,弹出undefined

alert(aa)

//变量未定义,undefined

,

未定义的变量也是undefined

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

var

strif(

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中有六种数据类型,包括五种基本数据类型(Number,String,Boolean,Undefined,Null),和一种复杂数据类型(Object)。

1、Number类型

Number类型包含整数和浮点数(浮点数数值必须包含一个小数点,且小数点后面至少有一位数字)两种值。

2、String类型

在JS中字符串需要使用引号引起来。使用双引号或单引号都行,但是不要混着用。引号不能嵌套,双引号不能放双引号,单引号不能放单引号。

3、Boolean类型

该类型只有两个值,true和false。

4、Undefined类型

只有一个值,即undefined值。使用var声明了变量,但未给变量初始化值,那么这个变量的值就是undefined。

5、Null类型

null类型被看做空对象指针,null类型也是空的对象引用。

6、Object类型

js中对象是一组属性与方法的集合。这里就要说到引用类型了,引用类型是一种数据结构,用于将数据和功能组织在一起。引用类型有时候也被称为对象定义,因为它们描述的是一类对象所具有的属性和方法。