[TOC]
## 1.算术运算
> +,-,*,/,%
`将先两边的值转为Number再计算`
**特殊:+运算例外**
~~~
算术计算中+的作用:拼接符
只要一边的值为字符串,那么结果为字符串
~~~
~~~
var a="12";
var b=3;
var c="12px";
var d;
// console.log(Number(a)-b);
console.log(a-b);
// console.log(Number(c)-b);
console.log(c-b);
// console.log(Number(a)-Number(b);
console.log(a-b);
~~~
计算结果如下:
![](https://box.kancloud.cn/1a718e857998a6534764bef2b5b95925_78x94.png)
## 2.比较运算:将两个值做比较-->返回值:true、false
>‘ >,<,>=,<=,==,!=,===’
> Tip: 比较运算中:
> a. 默认将所有类型转为数字再比较
> b.===不仅值相同,类型也要相同
**特殊情况**
1.倘若有一边的值为boolean,那么先将boolean-->number再比较
2.倘若一边为字符串,一边为Number,那么string-->number再比较
3.null==undefined
4.NaN:NaN不等于,不大于,不小于任何值(包括自己)
5.NaN不能和任何值计算,结果为NaN
6.NaN和任何数据做!=比较时,始终返回true
7.isNaN(n):本意是判断一个值是否是NaN
8.null和undefined比较值钱不能将其转为其它类型
## 3.逻辑运算:将多个关系运算综合起来,得出最终结论,返回值:true、false
> && , || , !
~~~
&&两边都要为true,结果为true
||只要一遍为true,结果为true
!-->取反
~~~
## 4.赋值运算
> += , -= , *= , /= , %=
## 5.三目运算
> var a=(10>4)?10:4;
## 6.递增和递减
### 6.1递增
> a++和++a;
* 1.单独使用a都会自增
~~~
eg:
var a=10;
a++ //11
~~~
* 2.在表达式中使用
> ++在前,先自增,后运算
> ++在后,先运算,后自增
### 6.2递减
**同上**
~~~
例子
var a = parseInt(window.prompt("请输入年龄"));
if(a>18){
alert("成年人")
}else if(a>12){
alert("青年人")
}
复制
var a = window.confirm("你是否选择购买");
console.log(a);
~~~
- 1.JS的基础知识
- (1)调试
- (2)变量
- (3)数据类型
- 数据类型之间的转换
- (4)全局变量和局部变量
- (5)运算符和表达式
- (6)数组
- 2.控制语句DOM,BOM,事件
- (1)控制语句
- (2)DOM的基础
- 节点
- 改变样式
- DOM事件
- 3.函数
- (1)声明函数
- (2)构造函数
- (3)函数的参数
- (4)函数的传参
- (5)改变this
- (6)重载
- (7)回调函数
- 4.数组
- (1)创建数组
- (2)增删改查
- (3)字符串与数组的转换
- 5.正则
- (1)创建正则
- (2)字符串中支持正则
- (3)语法
- 最核心的元字符
- 6.ajax
- (1)原生ajax
- (2)http,get,post
- (3)跨域
- (4)jQuery-ajax
- (5)axios
- 7.面向对象
- (1)原型
- (2)原型链,继承
- (3)多态
- 8.es6小结
- 9.js+canvas实现验证码
- 10.js的作用域
- 11.闭包
- 实例
- toggle
- 图片切换
- swiper
- 遮罩颜色渐变
- 表格添加
- 瀑布流
- ajax数据请求渲染
- 百度地图