JS特点
- JS的原创之处并不优秀,JS的优秀之处并非原创
- 学习JS要取其精华,去其糟粕。
- JS有 90% 都是糟粕,换而言之,要学习最精华的部分(原型、this、AJAX)
一、表达式和语句
表达式
- 值:1+2表达式的值为3
- 返回值:add(1,2)表达式的值为函数的返回值
- console.log表达式的值为函数本身
- console.log(3)表达式的返回值为:undefined;
因为3是打印出来的数值,并不是返回值。
语句
var a = 1是一个语句
二者的区别
- 表达式一般都有值,语句可能有也可能没有
- 语句一般会改变环境(声明、赋值)
注意大小写
- var a 和 var A 是不同的
- object 和 Object 是不同的
- function 和 Function 是不同的
空格
- 大部分空格没有实际意义
- return 后面不能加回车,否则意义会改变
二、标识符的规则
规则
- 第一个字符,可以是Unicode字母或$、_ 、中文,第二个字符后可以接数字
变量名是标识符
var _ = 1
var $ = 2
var ______ = 6
var 你好 = '你好'
注释
- 踩坑注释
- 代码目的(业务代码注释)
- 奇怪的代码(为什么要这样写,阐明思路)
三、if else 语句
语法
if(表达式){语句1}else{语句2}
{}在语句只有一句的时候可以省略,不建议这样做
变态情况
- a=1
- 嵌套if else
*最好使用最没有歧义的写法
if (表达式) {
语句
} else if (表达式) {
语句
} else {
语句
}
*次推荐使用的写法
function fn () {
if (表达式) {
return 表达式
}
if (表达式) {
return 表达式
}
return 表达式
}
条件语句
四、while for 语句
while语法
while(){语句}
判断表达式的真假
当表达式为真,执行语句,执行完再判断表达式的真假
当表达式为假,执行后面的语句
for循环
for 是 while循环的方便写法
for语法
for (语句1;表达式1;语句2) {
循环体
}
先执行语句1
然后判断表达式2
如果为真,执行循环体,然后执行语句3
如果为假,直接退出循环,执行后面的语句
五、break和continue
break 退出所有循环
continue 退出当前一次循环
六、label
label语法
foo: {
console.log(1);
break foo;
console.log('本行不会输出')
}
console.log(2);
{
foo: 1
}