JavaScript中的数据类型

JavaScript 常用数据类型

JavaScript 中常用的数据类型主要有下面几种:

  • String(字符串)
  • Number(数字)
  • Boolean(Boolean)
  • Array(数组)
  • Object(对象)

JavaScript 语言中变量的值可以是任意类型,因为 JavaScript 是弱类型语言,所以在使用关键字 var 声明变量时,我们可以不用为变量指定数据类型,直接为其赋不同类型的值即可。因为 JavaScript 中不需要关注变量的类型,所以代码会更加简洁,但是也需要更加注意,避免因为变量类型导致错误。

String 类型

字符串是用于存储字符的变量,一般是使用单引号''或双引号" "来声明字符串。

示例:

像下面这样,你可以在引号中放入英文、中文、符号、空格等等都行:

var name = 'xkd';

var school = "侠课岛"

我们可以在引号内写入任何内容,但是有一点需要特别注意,单引号中不能写入单引号,双引号中不能写入双引号。

例如下面这样写是错误的:

var name = 'My name is 'xkd'';   // 错误写法

var name = "你好, "侠课岛"欢迎你";  // 错误写法

如果某些内容中必须需要使用到引号,可以在单引号中使用双引号,双引号中使用单引号,类似下面这样:

var name = 'My name is "xkd" ';   // 正确写法

var name = "你好, '侠课岛'欢迎你";  // 正确写法
Number 类型

如果你学过其他语言,你就会知道有的语言数字类型会分为整型、长整型、浮点型、单精度、双精度等,看起来很复杂的样子。

而在 JavaScript 语言中,就只有一种数字类型number,数字可以带小数点,也可以不带,或者可以使用科学(指数)计数法。

示例:

声明三个不同值的数字类型的变量:

var num1 = 10;     // 不使用小数点
 
var num2 =  6.87;  // 使用小数点

var num3 = 157e2;  // 科学技术法,表示15700
Boolean 类型

JavaScript 语言中,Boolean 布尔类型只能有两个值,分别是 true 和 false,true 表示真,false 表示假,这个大家应该都知道吧。布尔类型一般用于条件测试中,如果给出的条件不符合,结果就是错的。

示例:

声明两个布尔类型的变量ab,判断变量 a 是否等于 b

var a = true;
var b = false;

if (a == b){
    console.log("a等于b");
}else{
    console.log("a不等于b");
}
// 输出:a不等于b
Array 类型

Array 是数组类型,数组就是使用中括号 [] 来声明的数据,例如下面这个变量 my_arr, 就是一个数组类型的变量:

var my_arr = [1, 2, 3];

每个数组中都可以有任意数量的元素,每个元素之间使用英文逗号,分隔(注意是英文逗号哟,在写代码时,不管是逗号、分号、引号,全部都是英文的)。数组中的值可以是任意类型的数据,例如数字类型、字符串类型等都可以。

示例:

声明几个不同的数组类型变量:

var my_arr1 = [];
var my_arr2 = [1, 2, 3];
var my_arr3 = ['a', 'b', 'c'];
var my_arr4 = [1, 'a'];

console.log(my_arr1);
console.log(my_arr2);
console.log(my_arr3);
console.log(my_arr4);

输出:

[]
[ 1, 2, 3 ]
[ 'a', 'b', 'c' ]
[ 1, 'a' ]

我们要数组的下标(索引)是从 0 开始的,例如数组中第一个元素的索引是0、第二个是1、第三个是2,依次类推。通过这个规律,我们可以知道上面代码中,变量 my_arr2 的元素1、2、3下标分别对应0、1、2,变量my_arr3 的元素a、b、c 下标分别对应0、1、2。在不熟悉的情况下,你可能很容易出错,所以要特别注意哟。

示例:

我们来看下面这个数组:

var fruits = ['梨子', '草莓', '樱桃', '西瓜', '菠萝', '苹果'];

你能说出西瓜和苹果的索引分别为几吗?

Object 对象

JavaScript 语言中,声明对象类型时可以使用花括号 {},而声明列表是使用中括号 []哟,别搞错啦。

在花括号{}中,对象的属性以名称和值对(name: value)的形式来定义,属性之间使用逗号分隔。

例如下面是一个定义好的对象 info

var info = {name:"xkd", age:20};

在这个对象 info 中,nameage 是属性名称, ”xkd“ 和 20 是属性的值。

我们可以通过 对象名.属性名 的方式来获取属性的值:

var info = {name:"xkd", age:20};

console.log(info);
console.log(info.name);  
console.log(info.age);   

输出:

{ name: 'xkd', age: 20 }
xkd
20
Undefined 和 Null 的区别

Undefinednull 都表示空,看起来它们似乎相同,其实两者之间还是存在一些区别的。

null 是一个字面量,表示确缺少的标识,指示变量未指向任何对象。把 null 作为尚未创建的对象,也许更好理解。在 API 中 null 在返回类型中应是一个对象,但是没有关联的值的地方使用。

undefined 表示"缺少值",即此处应该有一个值,但是还没定义。典型的用法是变量被声明了,但没有给变量赋值,就等于undefined。

示例:
var a;
console.log(a);  // undefined

var b = null;
console.log(b);  // null

在一个函数中,如果应该提供的参数没有提供,该参数等于undefined。

function func(x){
	console.log(x)
}
func() // undefined

函数没有返回值时,默认返回undefined。

function func(){}

var a = func(); 
console.log(a);  // undefined
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值