0
点赞
收藏
分享

微信扫一扫

数据类型、数据类型转换和运算符

程序员伟杰 2022-02-11 阅读 54

第一部分、数据类型

1.变量的数据类型

JavaScript是一种弱类型语言,不用提前声明变量的数据类型。在程序的运行过程中,变量的数据类型会被自动确定。

2.数据类型分类

JavaScript中的数据类型可分为两大类,基本数据类型复杂数据类型(也称引用数据类型)
在这里插入图片描述

3.数字型

JavaScript中的数字型可以用来保存整数浮点数(小数)。

var age=10;    //整数

var pi=3.14;    //浮点数(小数)

(1)范围:数字型的最大值和最小值

  • 最大值:Number.MAX_VALUE,输出结果:1.7976931348623157e+308
  • 最小值:Number.MIN_VALUE,输出结果:5e-324

(2)数字型的3个特殊值:Infinity和- Infinity 和NaN

  • Infinity(无穷大) :如Number.MAX_VALUE*2
  • -Infinity(无穷小) :如-Number.MAX_VALUE*2
  • NaN(非数值): 如’abc’–100
  • isNaN:用来判断一个变量是否为非数字的类型,返回值为true表示非数字,false表示是数字

4.字符串型

字符串是指计算机中用于表示文本的一系列字符,在JavaScript中舒勇单引号双引号来包裹字符串。

var str1 = '单引号字符串';

var str2 = "双引号字符串";

(1)单、双引号的嵌套:

  • 在单引号字符串中可以直接书写双引号
  • 在双引号字符串中也可以直接书写单引号

(2)转义符:

转义符:在字符串中使用换行、Tab等特殊符号时,可以用转义符来进行转义,转义符以“\”开始。常见转义符见下表。
在这里插入图片描述

(3)字符串的长度

字符串长度:字符串是由若干字符组成的,这些字符的数量就是字符串的长度。通过字符串的length属性可以获取整个字符串的长度。

var str1="program";

console.log(str1.length);    //获取str1的长度

在这里插入图片描述

(4)访问字符串中的字符

访问字符串中的字符:字符串可以使用“[index]”语法按照index(索引)访问字符,index0开始,一直到字符串的长度减1,如果超过了index最大值,会返回undefined。

var str1="program";

console.log(str1[0]);    //访问字符串的第1个字符

console.log(str1[3]);    //访问字符串的第4个字符

console.log(str1[10]);    //访问字符串的第11个字符(字符串的溢出)

在这里插入图片描述

(5)字符串的拼接

字符串拼接:多个字符串之间可以使用“+”进行拼接,如果数据类型不同,拼接前会把其他类型转成字符串,再拼接成一个新的字符串。

console.log(12 + 14);    //12+14

console.log("12" + 14);    //将12与14拼接

console.log("12" + "14");    //将12与14拼接

console.log("a" + "b");    //将a与b拼接

console.log("a" + 12);    //将a与12拼接

运行结果如下:
在这里插入图片描述

5.布尔型

布尔型通常用于逻辑判断,它有两个值:truefalse,表示事物的“真”和“假”。在运算时,true视为1false视为0

console.log(true);

console.log(false);

console.log(true + 1);

console.log(false + 1);

在这里插入图片描述

6.undefined和null

(1)undefined

如果一个变量声明后没有赋值,则变量的值就是undefined

var age;

console.log(age);

在这里插入图片描述

(2)null

var str1="";    //空串

var str2=null;    //空值

console.log(str1);

console.log(str2);

console.log(null + 1);    //在运算中,null视为0

在这里插入图片描述

7.数据类型检测

可以使用typeof运算符进行数据类型的检测。

var n1=25;

console.log(typeof n1);    //输出n1的数据类型

console.log(typeof n1 === "number");    //检测n1是否为数字类型

在这里插入图片描述

第二部分、数据类型转换

1.转换成字符串型

(1)利用“+”拼接字符串(最常用的一种方式)

console.log("a" + 12);

(2)利用toString()转换成字符串

  1. null和undefined不能转换
  2. 传入一个参数可以将数值型数据转换成对应的数制
var t1 = 10;

console.log(t1.toString());    //将数字型转换成字符串类型

console.log(t1.toString(2));    //将10转换为2进制

在这里插入图片描述

利用String()转换成字符串

String类进行转换:是JavaScript的内置类,可以直接使用。

var str = new String("湘潭大学");

console.log(str);

在这里插入图片描述

2.转换为数字型

(1)将字符串转换成整数:parseInt()

var temp = '12345';    //定义字符串'12345'

console.log(typeof '12345');    //检测temp的类型

var k = parseInt(temp);    //将temp转换成数字型

console.log(k);    

console.log(typeof k);    //检测转换后的类型

在这里插入图片描述

(2)将字符串转换为浮点数:parseFloat()

var temp = "3.14";

var k = parseFloat(temp);

console.log(k);

console.log(typeof k);

在这里插入图片描述

(3)使用Number()将字符串转为数字型

var temp = 3.14;

var t = Number(temp);

console.log(typeof t);

在这里插入图片描述

3.转换为布尔型

转换为布尔型使用Boolean(),在转换时,代表空、否定的值会被转换为false,如空字符串0NaNnullundefined,其余的值转换为true

var m = "";    //空字符串

var n = "123";

console.log(Boolean(m));

console.log(Boolean(n));

在这里插入图片描述

第三部分、运算符

1.算数运算符

算术运算符用于对两个变量或值进行算术运算,与数学上的加、减、乘、除类似,常用的算术运算符如下。
在这里插入图片描述
注意事项:

  1. 进行四则混合运算时,运算顺序要遵循数学中“先乘除后加减”的原则
  2. 在进行取模运算时,运算结果的正负取决于被模数(%左边的数)的符号,与模数(%右边的数)的符号无关
console.log(10%-3);    //结果是1

console.log(-10%3);    //结果是-1
  • 在开发中尽量避免利用浮点数进行运算,因为有可能会因JavaScript的精度导致结果的偏差
  • 使用“+”和“-”可以表示正数或负数

2.递增和递减运算符

使用递增(++)、递减(–)运算符可以快速地对变量的值进行递增和递减操作,它属于一元运算符,只对一个表达式进行操作。
-前置递增(递减)运算符:递增和递减运算符写在变量前面,返回的是计算后的结果

  • 后置递增(递减)运算符:递增和递减运算符写在变量后面,返回的是计算前的结果
  • 递增和递减运算符的优先级高于“+”“-”等运算符
var a=5,b=3,k;

// k = ++a*b;    //先加1,后运算,结果k=18

// k = a++*b;    //先使用,后加1,结果k=15

console.log("a=",a);

console.log("k=",k);

3.比较运算符

比较运算符用于对两个数据进行比较,其结果是一个布尔值,即truefalse ,常用的比较运算符及用法见下表。
在这里插入图片描述
注意:== 和 ===的区别

var k1 = "123";    //字符串类型

var k2 = 123;    //number类型

console.log("==的结果:",k1 == k2);    //只看数值,结果为true

console.log("===的结果",k1 === k2);    //数值与类型都看,结果为false

4.逻辑运算符

(1)&&

&&:逻辑与, 表达式1 && 表达式2,两个表达式都为true时,结果为true

  • '&&'运算中的短路现象:当"表达式1"为假时,不运算"表达式2"
var a=10,b=5,k;

k = a<6 && (--b<3);

console.log("k=",k);

console.log("b=",b);    //a<6为假,运算结果为false,不进行--b的运算,b=5

(2)||

||:逻辑或, 表达式1 || 表达式2,两个表达式有一个为true,结果为true

  • '||'运算中的短路现象:当"表达式1"为真时,不运算"表达式2"

(3)!

!:逻辑非(取反),单目运算符, !表达式

5.赋值运算符

常用的逻辑运算符及示例见下表。
在这里插入图片描述

6.位运算符

位运算符,用来对数据进行二进制运算,将参与运算的操作数视为由二进制(0和1)组成的32位的串。

  1. &:按位’与’,两个对应的二进制位都为1时,结果为1,否则为0
    在这里插入图片描述
  2. |:按位’或’,两个对应的二进制位有一个为1时,结果为1
  3. ^:按位’异或’,两个对应的二进制位相同为0,不同为1
    在这里插入图片描述

7.三元运算符

三元运算符是一种需要三个操作数的运算符,运算的结果根据给定条件决定。

条件表达式? 表达式1:表达式2

语法说明:先求条件表达式的值,如果为true,则返回表达式1的执行结果;如果条件表达式的值为false,则返回表达式2的执行结果。

举报

相关推荐

0 条评论