数据类型及操作符介绍

数据类型及操作符介绍

Number

  数字类型可以使用二进制,八进制,十进制和十六进制表示,当使用二进制表示时,在数字前面加上0b,使用八进制表示时,在前面加上0,使用十六进制表示时,在前面加上0x,如下

var num1 = 0b110;  //二进制表示,大小为6
var num2 = 010;    //八进制表示,大小为8
var num3 = 0x1f;   //十六进制表示,大小为31
console.log(num1);
console.log(num2);
console.log(num3);

6
8
31

  小数的加减有精度问题,比如

var num1 = 0.1;
var num2 = 0.2;
var num3 = num1 + num2;   //答案不是0.3
console.log(num3);

0.30000000000000004

  NaN表示的是Not a Number,意思是不是一个数,两个NaN是不相等的。使用0/0会得到一个NaN

var num1 = 0/0;
console.log(num1);

NaN
var num1 = 0/0;
var num2 = 0/0;
console.log(num1 == num2);

false

我们可以使用isNaN(变量名)来验证一个数是否是NaN,如果是的话,会返回true

var num = 0 / 0;
console.log(isNaN(num));

true

String

  对于一个字符串类型的变量,可以通过变量名.length去获得字符串的长度

var str = "What are you doing?"
console.log(str.length);

19

转义字符:

转义字符功能
\t一个tab的距离
\'单引号
\\斜杠
\b退格
\f走纸换页
\n换行
\r回车

  使用加号可以将字符串拼接,比如

var str1 = "what";
var str2 = " this?";
console.log(str1 + str2);

what this?

当字符串类型+一个数字类型时,会得到一个数字类型,比如"10" + 5 = "105",但是当字符串类型与数字类型进行减法时,会得到一个数字,比如"10" - 5 = 5,乘法与除法也与减法一样。

数据类型转换

转换为数字

  转换为数字有三种办法,第一种是使用parseInt(变量名),是转化为整数,比如

console.log(parseInt("10"));        //10
console.log(parseInt("10.98"));     //10
console.log(parseInt("10a"));       //10
console.log(parseInt("g10"));       //NaN


10
10
10
NaN

  第二种是parseFloat(变量名)是转化为小数

console.log(parseFloat("10"));        //10
console.log(parseFloat("10.98"));     //10.98
console.log(parseFloat("10.98a"));    //10.98
console.log(parseFloat("g10"));       //NaN


10
10.98
10.98
NaN

  第三种使用的是Number(变量名),是转化为数字

console.log(Number("10"));        //10
console.log(Number("10.98"));     //10.98
console.log(Number("10a"));       //NaN
console.log(Number("g10"));       //NaN

10
10.98
NaN
NaN

转化为字符串

  转化为字符串有两种方法,第一种为.toString(),该方法对undefinednull类型的无效,这两种类型可以使用String()方法。如下

var num = 12;
var bool = true;
var und;
var nul = null;
console.log(num.toString());   //"12"
console.log(bool.toString());  //"true"
console.log(String(und));      //"undefined"
console.log(String(nul));      //"null"


12
true
undefined
null

转化为布尔类型

  转化为布尔类型只有Boolean()方法

var num1 = 1;
var num2 = -10;
var num3 = 0;
var str1 = "what";
var str2 = "";
var nul = null;
var und;
console.log(Boolean(num1));   //1 --> true
console.log(Boolean(num2));   //-10 --> true
console.log(Boolean(num3));   //0 --> false
console.log(Boolean(str1));   //"what" --> true
console.log(Boolean(str2));   //"" --> false
console.log(Boolean(nul));    //null --> false
console.log(Boolean(und));    //undefined --> false

操作符

算术操作符

  +, - , * , / , %,没啥好说的。

复合运算符

  +=, -=, *=, /=, %=

a += b   ---> a = a + b
a -= b   ---> a = a - b
... ...

关系运算符

  >, < , >=, <=, ==, ===, !=, !==,这里讲一下=====的不同

"5" == 5   ----> true
"5" === 5  ----> false

==只比较值是否相等,而===除了比较值是否相等意外,还比较数据类型是否相同。

逻辑运算符

  &&, ||, !,这个也没啥说的。

一元运算符

  ++, --的作用是让变量自增1或者自减1。而++, --既可以放在运算符后面,也可以放在运算符前面,如果使用该运算符未参加计算,则二者是一样的,即

++num;   ---->num = num + 1;
num++;   ---->num = num + 1;

如果该变量参加计算,则有不同的效果,如

a = num++ + b; ---->
a = num + b; 
num = num + 1;


a = ++num + b; ----> 
num = num + 1; 
a = num + b;

三元运算符

  具体语法为

表达式1 ? 表达式2 : 表达式3

首先对表达式1进行判断,如果为真,则执行表达式2,否则执行表达式3

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值