基本语法、规范、运算符、等
错误分为两大类:语法(SyntaxError:代码一句都不会执行)和通用:中断执行,在错误之前的语句都会执行
代码块与代码块之前的错误是互不影响的
括号运算>普通运算>赋值;
+数学运算
任何数据类型的值 + 字符串都是字符串
var c=0/0;
console.log©;
NaN(数字类型) -> Not a Number非数
var c = 1/0
infinity -> 数字类型
-infinity - > 数字类型
比较运算符
number - string string->number
string - string 转换成ascii码进行计算 (从左到右依次对比)
和=区别:
==不看数据类型
===是需要看数据类型是否相等
NaN与包括自己在内任何东西都不相等
条件语句
if(条件){} 互斥的情况下用else if在项目开发条件复杂的情况下 一定考虑好互斥性这个条件
var city = window.prompt(“请输入你所在的地区”);
switch(变量){
case 值:
语句;
break;//(中断循环)
default:
语句;
}
一般来说有范围判断的用if 有定值得一般的用switch比较好 不同的东西在对的适用场景
break和continue在循环的时候补充
逻辑运算(与或非)
与&& 或|| 非!
undefined,null,NaN,"”,0,false都是假
除上述以外全部都是真的
与运算:遇到真就往后走,遇到假或走到最后就返回当前的值
例子:var a = 1 && 2 && undefined && 10; //打印undefined
或运算:遇到假就往后奏,遇到真或者走到最后就返回当前的值
var b = 0 || null || 1 || 0;//打印1
注释
//行注释
/* */块注释
循环语句
for循环 while循环 do…while()循环
1.打印0-100的数
2.()只能有一句,不能写比较
3.{}不能出现i++、i–
var i=100;
for(;i–😉{
consolo.log(i);
}
引用值
//array object function date RegExp
//object
var person={
name:‘小夏’,
height:180,
job:‘WEB工程师’
}
person.name=‘小王’;
typeof();打印数据类型(返回的是数据类型的名称 所以是 string)或者typeof ;
null是object类型 undefined返回undefined
注意typeof(typeof(undefined))打印出来是string
显示类型转换/隐式类型转换
Number(null)转换为0 Number(undefined)转换为NaN
parseInt(String)转换为整型 不是四舍五入 直接舍去小数点
parseInt(String,基数进制)
parseInt(“字符串”+数字)==NaN
parseInt(“数字”+字符串)==数字
var num=parseFloat(“3.1415926”);
console.log(num.toFixed(2));四舍五入缩进小数
String(123);或者+""转换成字符串
隐式类型转换
var a=‘123’;//Number(a) //加减乘除模 逻辑判断->number
a++;
console.log(a);//打印124
注意:两个字符串作比较的时候才转换为ascii的对比
undefined和null及不大于0也不小于0更不等于0
undefined==null 返回true
isNaN()判断是不是非数
isNaN(null)==false isNaN(undefined)==true
总结使用isNaN方法的时候都要进行number的转换在判断是否非数 上面的null转化就是0 undefined就是非数
Number(值) -> NaN ->boolean