JavaScript数据类型

JavaScript数据类型

一.数值型(Number)

JavaScript不区分整型和浮点数,所有的数值都为浮点型数据来表示。统一用Number表示。
使用toString()方法把数值转换为字符串。

<script>
var a=100;
var c=a.toString();
alert(typeof(c));//返回string
</script>

有个简单的方式就是使用数值与字符串相加,即可把数值转换为字符串。

<script>
var a=100;
var c=a+" ";
alert(typeof(c));//返回string
</script>

Javascript提供了几个特殊的数值,这些数值在数学计算中比较有用,如图所示:

Column 1Column 2
Infinity无穷大
Number.MAX_VALUE可表示的最大数值
Number.NaN非数值
Number.NEGATIVE_INFINITY负无穷大
NaN非数值
Number.MIN_VALUE可表示的最小数值
Number.POSITIVE_INFINITY正无穷大

二.字符串(string)

字符串是以单引号’或双引号"括起来的任意文本,比如’abc’,“xyz"等等。请注意,’'或”"本身只是一种表示方式,不是字符串的一部分,因此,字符串’abc’只有a,b,c这3个字符。
使用parseInt()和parseFloat()方法可以把字符串转换为数值。

<script>
var str="123.30";
var a=parseInt(str);//123
var b=parseFloat(str);//123.30
</script>

有个简单的方式就是让字符与1相乘,即可把字符串快速转换为数值。

<script>
var str="123.30";
var a=str*1;
alert(typeof a);//返回number
</script>

三.布尔型

布尔值和布尔代数的表示完全一致,一个布尔值只有true、false两种值,要么是true,要么是false,可以直接用true、false表示布尔值,也可以通过布尔运算计算出来:

<script>
true; // 这是一个true值
false; // 这是一个false值
2 > 1; // 这是一个true值
2 >= 3; // 这是一个false值
</script>

要把任何值转换为布尔型数据,在值的前面增加两个感叹号。

<script>
var a=100;
var c=!!a;
alert(c);//返回值为true
alert(typeof c);//返回boolen
</script>

任何非0的数字转换为布尔值后为true,而0转换为布尔值为false。
任何非空的字符串转换为布尔值后为true,而空格转换为布尔值为false。
如果把布尔值转换为数值,则true位1,false为0。

<script>
var a=true;
var b=false;
a=a*1;//值为1
b=b*1;//值为0
</script>

这些值的布尔值都是false

Column 1Column 2
0Number
NaNNumber
‘’String
falseBoolean
nullObject
undefinedUndefined

四.null和undefined

null是Null类型的值,Null类型的值只有一个值(null),它表示空值。当使用typeof运算符检测null值的类型,则返回object说明它是一种特殊的对象。
undefined表示为定义的值,当变量未初始化值时,会默认其值为undefined。当使用typeof运算符检测undefined值的类型,返回值为undefined。
两者的区分意义不大。大多数情况下,我们都应该用null。undefined仅仅在判断函数参数是否传递的情况下有用。

五.引用型数据

包含数组、对象、函数。

1.数组(array)

数组是值的有序集合,指的是多个值之间必须按先后的顺序排列在一起,能够根据序号找到对应的位置。JavaScript的数组可以包括任意数据类型。例如:

[1, 2, 3.14, 'Hello', null, true];

上述数组包含6个元素。数组用[]表示,元素之间用,分隔。

另一种创建数组的方法是通过Array()函数实现:

new Array(1, 2, 3); // 创建了数组[1, 2, 3]

然而,出于代码的可读性考虑,强烈建议直接使用[]。

2.对象(object)

对象
JavaScript的对象是一组由键-值组成的无序集合,例如:

var person = {
    name: 'Bob',
    age: 20,
    tags: ['js', 'web', 'mobile'],
    city: 'Beijing',
    hasCar: true,
    zipcode: null
};

JavaScript用一个{…}表示一个对象,键值对以xxx: xxx形式申明,用,隔开。注意,最后一个键值对不需要在末尾加,,如果加了,有的浏览器(如低版本的IE)将报错。
JavaScript对象的键都是字符串类型,值可以是任意数据类型。上述person对象一共定义了6个键值对,其中每个键又称为对象的属性,例如,person的name属性为’Bob’,zipcode属性为null。

要获取一个对象的属性,我们用对象变量.属性名的方式:

person.name; // 'Bob'
person.zipcode; // null

3.函数(function)

JavaScript是函数式编程语言,在JavaScript脚本中函数随处可见。函数构成了JavaScript的代码主题。定义函数有两种方式:
一、使用function语句声明函数

function f()
{
//函数体
}

二、通过Function对象来构造函数

var f=Function()
{
//函数体
}

命名函数的方法也被称为声明式函数。
匿名函数的方法也被称为引用式函数或者函数表达式。即把函数看作一个复杂的表达式,并把表达式赋予变量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值