什么是JavaScript
简称js,是一个运行在【js解释器】中的【解释型】【弱类型】【面向对象】语言 由三部分组成ECMAScript dom bom
输出的三种方式
控制台 console.log(); 页面 document.write(); 警告框 alert()
创建变量和常量的方式:
var 变量名=值; const 常量名=值
数据类型
1.string 2.Number 3.Boolean 4.Undefined 5.Null
数据类型的转换
1.转字符串 x.toString() 2.转数字 parseInt/parseFloat 3.转布尔 Boolean(x)
分支
1、代码流程控制语句:
1、顺序结构:默认的,代码从上向下
2、分支结构:根据条件不同,选择部分代码执行
3、循环结构:根据条件满不满足,考虑要不要再执行一次相同 或 相似代码
2、关系/比较运算符:> < >= <= == !=
结果:一定都是一个布尔值
注意:==才叫比较 =叫赋值:右边的东西放到了左边保存起来
3、逻辑运算符:
&&:与(并且):全部条件都满足,结果为true
只要有一个条件不满足,结果为false
||:或:全部条件都不满足,结果为false
只要有一个条件满足,结果为true
!:颠倒布尔值 2、分支的语法:**
if....else......******
1、一个条件一件事,满足就做,不满足就不做
if(条件){
操作
}
2、一个条件两件事,满足就做第一件,不满足就做第二件
if(条件){
操作;
}else{
默认操作;
}
3、多个条件多件事:满足谁就做谁
if(条件1){
操作1;
}else if(条件2){
操作2;
}else if(条件3){
操作3;
}else{
默认操作;
}
else可以省略,但是不推荐
三目运算:简化if...else 简化if...else if...else
语法:
1、条件?操作1:默认操作;
2、条件1?操作1:条件2?操作2:条件3?操作3:默认操作;
特殊:
1、只能简化简单的分支 - 操作只能有一句话
2、默认操作不能省略
总结:
if === &&短路
if else === 三目
if else if else === 三目
3、switch...case...语法
switch(变量/表达式){
case 值1:
操作1;
case 值2:
操作2;
case 值3:
操作3;
default:
默认操作;
}
特殊:1、不具备隐式转换
2、问题:默认只要一个case满足后,就会将后面所有操作全部做一 次
解决:break;
建议:每一个case的操作后都要跟上一个break
有的地方可以不加break:
1、最后一个操作default可以省略break
2、如果中间连续的多个操作,是相同的,也可以省略掉中间部分
面试题:if vs switch
1、switch:缺点:必须要知道最后的结果才能使用,不能做范围判断
优点:执行效率相对较高
2、if : 优点:可以做范围判断
缺点:执行效率相对较慢
建议:代码优化:尽量的将if替换为switch或者三目或短路