JavaScript学习笔记二——数据类型,运算符和表达式

一、数据类型

(一)基本类型

  1. string:字符串

必须用英文的引号(单引号和双引号都可以)引起来,例如:"a","张三"。

  1. number:数字

直接写数字就行,例如:3,3.14都是数字类型。NaN是number类型的一种

  1. boolean:布尔类型

只有两个值,true(成立)和false(不成立)

(二)特殊类型

  1. null:空

  1. undefined:未定义

定义了一个变量,但没赋值,变量中的内容就为undefined

(三)复杂(对象)类型

object:{}

二、数据类型的转换

(一)字符串和数字

  1. 字符串转数字

(1)parseInt

格式:parseInt(str) 注:str是一个字符串

注意事项:parseInt只会保留整数部分,如果字符串开头不是数字直接返回NaN。

(2)parseFloat

格式:parseFloat(str) 注:str是一个字符串

注意事项:parseFloat会保留小数部分,一旦遇到错误,只会转换错误之前的部分。如果字符串开 头不是数字直接返回NaN

<script>
    var a=parseFloat("555");
    var b=parseFloat("555.555");
    var c=parseFloat("5张5.55");
    var d=parseFloat("hais");
    console.log(a);
    console.log(b);
    console.log(c);
    console.log(d);
</script>

(3)Number

格式:Number(str) 注:str是一个字符串

注意事项:Number会保留小数部分,但数据一旦有误,结果为NaN

<script>
    var a=Number("555");
    var b=Number("555.555");
    var c=Number("5张5.55");
    console.log(a);
    console.log(b);
    console.log(c);
</script>

(4)用算术运算符

+、-0、*1、/1、%比本身大的数(详细的往下看)

  1. 数字转字符串

(1)toString:把变量中的数据转换成字符串

<script>
    var a=5;
    var b=a.toString();
    console.log(b);
    console.log(typeof(b));//查看数据类型
</script>

(二)字符串和布尔

  1. 字符串转布尔

格式:Boolean(str) 注:str是一个布尔字符串

注意事项:0、null、undefined、""和NaN通过Boolean指令,转换结果为false,其它都是true

<script>
    console.log(Boolean(0));
    console.log(Boolean(null));
    console.log(Boolean(undefined));
    console.log(Boolean(""));
    console.log(Boolean(NaN));
    console.log(Boolean(false));
    console.log(Boolean(true));
</script>

(2)布尔转字符串(toString)

三、运算符

(一)算术运算符

  1. +(加)

(1)加法运算:加号两边都是数字将做加法运算,例如:console.log(3+5);//结果:8

(2)拼接运算:加号两边只要任何一边是字符串将做拼接运算,拼完将成为一个新字符串,

例如:var a="张"+3;console.log(a);//结果:"张3"

(3)类型转换:把字符串类型转换为数字类型

例如:var a=+"5";console.log(typeof(a)); //结果:number

  1. -(减)

(1)减法运算:减号两边都是数字将做减法运算,例如:console.log(3+5);//结果:-2

(2)类型转换:把字符串类型转换为数字类型

例如:var a="5"-0;console.log(typeof(a));//结果:number

  1. *(乘)

(1) 乘法运算:console.log(3*5); //结果:15

(2) 类型转换:把字符串类型转换为数字类型

例如:var a="5"*1;console.log(typeof(a));//结果:number

  1. /(除)

(1) 除法运算:console.log(15/5); //结果:3

(2) 类型转换:把字符串类型转换为数字类型

例如:var a="5"/1;console.log(typeof(a));//结果:number

  1. %(取余)

(1) 除法运算:console.log(15%2); //结果:1

(2) 类型转换:把字符串类型转换为数字类型,除数一定要大于被除数

例如:var a="5"%6;console.log(typeof(a));console.log(a);//结果:number 5

  1. ++(自增)

(1)前置++:会先把值自动+1,再返回

例如:var a=10;console.log(++a); //结果:11

返回11,并把a的值+1变成11。

(2)后置++:会先把值返回,再自动+1

例如:var a=10;console.log(a++); //结果:10

先返回10,再把a的值+1变成11

var k=0;console.log(k++ + k+ ++k + k++);//结果:5

k++

k

++k

k++

返回

0

1

2

2

相加得5

k

1

1

2

3

最后k为3

  1. --(自减)

(1)前置--:会先把值自动-1,再返回

例如:var a=10;console.log(--a); //结果:9

返回9,并把a的值-1变成9。

(2)后置--:会先把值返回,再自动-1

例如:var a=10;console.log(a--); //结果:10

先返回10,再把a的值-1变成9

var k=5;console.log(k-- + k+ --k + k--);//结果:15

k--

k

--k

k--

返回

5

4

3

3

相加得15

k

4

4

3

2

最后k为2

(二)比较运算符

> 、 < 、 == 、 >= 、 <=、 != 、 ===

能够对数据进行比较运算,比较的结果为布尔类型,如果成立结果就为true,否则为false

<script>
    console.log(3>5);    
    console.log(3<5);    
    console.log(3>=5);    
    console.log(3<=5);    
    console.log(3!=5); 
    console.log(3=="3");
    console.log(3==="3");
</script>

注意事项:==只判断内容是否相等

===既要判断内容是否相等,也要判断类型是否相等

=赋值,

(三)逻辑运算符

  1. &&:逻辑与(并且)

两边只要有一边不成立,结果就不成立(false)

只有两边都成立,结果才成立

<script>
    console.log(true&&true);
    console.log(true&&false);
    console.log(false&&true);
    console.log(false&&false);
</script>
  1. ||:逻辑或(或者)

两边只要有一边成立,结果就成立

只有两边都不成立,结果才不成立

<script>
    console.log(true||true);
    console.log(true||false);
    console.log(false||true);
    console.log(false||false);
</script>
  1. !:逻辑非(或者)

以前成立,结果就不成立

以前不成立,结果就成立

只能对布尔类型的数据进行逻辑运算

<script>
    console.log(!true);
    console.log(!false);
</script>

(四)括号运算符

  1. 小括号():改变优先级

  1. 中括号[]:下标运算

  1. 大括号{}:块运算符

(五)赋值运算符

  1. =:把等号右边的赋值给左边的变量名

例如:a=5

如果3=5,将会报错

  1. +=:

<script>
    var a = 10;
    a += 10;//a+=10相当于a=a+10
    console.log(a);
</script>
  1. -=:

<script>
    var a = 10;
    a -= 10;//相当于a=a-10
    console.log(a);
</script>
  1. *=:

<script>
    var a = 10;
    a *= 10;//相当于a=a*10
    console.log(a);
</script>
  1. /=:

<script>
    var a = 10;
    a /= 10;//相当于a=a/10
    console.log(a);
</script>
  1. %=:

<script>
    var a = 10;
    a %= 10;//相当于a=a%10
    console.log(a);
</script>

(六)三目运算符

  1. 单目运算符

!、++、--

  1. 双目运算符:必须要两个数据才可以进行运算

+、-、*、/

  1. 三目运算符:必须要三个数据才可以进行运算

写法:布尔数据?数据1:数据2

原理:先查看布尔数据的结果,如果结果为true,运算结果就是数据1,否则就是数据2

<script>
    console.log(3>5?"yes":"no");
</script>

四、运算符优先级法则

  1. 括号永远最高

  1. 赋值永远最低

  1. 单目>双目>三目

  1. 算术>比较>逻辑

  1. 乘除余>加减 逻辑与>逻辑或

  1. 优先级相同,从左往右运算

五、表达式

  1. 概念:用运算符把数据连起来就称为表达式

  1. 特点:每个表达式都有一个值,该值就是运算的结果

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值