Node基础学习(三):JavaScript的基本数据类型

Node基础学习系列
上一篇:Node基础学习(二):第一个Node应用

我们都知道,Node.js不是一门新语言,而是JavaScript在服务端运行的环境,所以我们有必要回忆一下JavaScript的基本数据类型,这样更加有助于我们学习和了解Node.js。

一、string(字符串)类型

string类型是JavaScript中的基本数据类型,可以直接使用单引号或者双引号定义,同时对于其他类型的变量,我们可以使用String()或者toString()将其转换为string类型的变量,这两个方法的区别在于,String()可以转换所有的类型,但是toString()无法转换值为null或者undefined的变量。

【提示】我们可以使用typeof运算符来判断一个变量的类型

var str1 = '单引号定义的字符串';
var str2 = "双引号定义的字符串";

console.log(typeof str1);   //string
console.log(typeof str2);   //string

var flag = true;
console.log(typeof flag);   //boolean

//可以使用String()或者toString()方法将其他类型的变量转换为String类型
console.log(typeof String(flag));       //string
console.log(typeof (flag.toString()));  //string

var obj1 = null;
var obj2 = undefined;

console.log(typeof String(obj1));   //string
console.log(typeof String(obj2));   //string
console.log(typeof obj1.toString());   //爆错,无法转换
console.log(typeof obj2.toString());   //爆错,无法转换

二、number(数字)类型

在JavaScript中,无论是整数还是小数,都是number类型的数据,同时,我们可以使用parseInt()方法,将其他类型的数据转换为number类型的整数,使用parseFloat()方法将其他类型的数据转换为number类型的小数。

var num1 = 0;
var num2 = 10000000000;

console.log(typeof num1);   //number
console.log(typeof num2);   //number

var str = '123456789';
console.log(typeof str);    //string
console.log(typeof (parseInt(str)));    //number
console.log(typeof (str * 1));  //number

var f = 3.141592;
console.log(typeof f);  //numner

var fs = '3.141592';
console.log(typeof fs);     //string
console.log(parseInt(fs));      //3
console.log(parseFloat(fs));    //3.141592
console.log(typeof (parseFloat(fs)));     //number
console.log(typeof (fs * 1));     //number

三、boolean(布尔)类型

boolean类型只有两种值,分别为true(真)和false(假),我们可以使用Boolean()方法将其他类型的数据转换为boolean类型,其中非空字符串转换为true,空字符串转换为false,非0数字转换为true,0转换为false。

var flag1 = true;
var flag2 = false;

console.log(typeof flag1);  //boolean
console.log(typeof flag2);  //boolean

var str1 = '非空字符串';
var str2 = '';
console.log(Boolean(str1));     //true
console.log(typeof (Boolean(str1)));    //boolean
console.log(Boolean(str2));     //false
console.log(typeof (Boolean(str2)));    //boolean

var num1 = 999;
var num2 = -123;
var num3 = 0;
console.log(Boolean(num1));     //true
console.log(Boolean(num2));     //true
console.log(Boolean(num3));     //false

四、object(对象)类型

object类型是JavaScript的对象类型,其中null表示对象为空,{}表示一个对象,[]表示一个集合数组,它们都是object类型的数据。

var obj1 = null;    //null
var obj2 = {};      //对象
var obj3 = [];      //集合

console.log(obj1)       //null
console.log(typeof obj1);   //object
console.log(obj2)       //{}
console.log(typeof obj2);   //object
console.log(obj3)       //[]
console.log(typeof obj3);   //object

五、undefined(未定义)类型

在JavaScript中,还有一种类型的数据,就是未定义的数据类型。

var obj1;
console.log(obj1);       //undefined
console.log(typeof obj1);   //undefined

var obj2 = undefined;
console.log(obj2);       //undefined
console.log(typeof obj2);   //undefined

六、function(函数)类型

在JavaScript中还有另外一种特殊的数据类型,就是function类型,所有的函数都是函数类型的数据。

function firstFunction(){
    console.log('调用了firstFunction方法!')
}

console.log(typeof firstFunction);  //function

var secondFunctionObject = function secondFunction() {
    console.log('调用了secondFunction方法!')
}
//上面这种写法和下面的写法是一样的
// var secondFunctionObject = function() {
//     console.log('调用了secondFunction方法!')
// }

console.log(typeof secondFunction);  //undefined
console.log(typeof secondFunctionObject);   //function

猜你喜欢

转载自blog.csdn.net/qq_45193304/article/details/106303147