語句和表達式
表達式和語句的區別在於,語句是爲了進行某種操作,一般情況下不需要返回值,而表達式是爲了得到值。
一般情況下,在javascript
中每一行就是一個語句。
let a = 1 + 3
這是一條賦值語句,其中1+3
就是語句。
標識符
在javascript
中,第一個字符可以是Unicode
字符或或者$
或者_
或者中文。後面的字符,除了上面所說的,還可以是數字。
合法標識符:
let _ = 1
let $ = 2
let $3 = 3
let 名字 = 'zhangsan'
非法標識符:
let int = 1 //保留字
let 90 = 43 //數字開頭
let hello world = '你好' //標識符中有空格
條件語句
編程語言中,代碼需要依靠不同的輸入做出相應的決定,就需要用到條件語句。
基本語法:
if (condition) {
...
} else {
...
}
else
和後面花括號中的語句不是必須的,
if (condition){
...
}
...
這裏要注意的是,這種情況下,後面的語句是一定會執行的。
如果條件條件比較多的情況可以配合else if
使用
if (condition) {
...
} else if (condition2) {
...
} else {
...
}
當對應的condition
被滿足時,就會執行對應花括號中的語句。如果都不滿足,會執行最後的else
語句。
while
和for
while
語句是,當滿足條件就會執行花括號中的代碼。
let i = 1
while (i < 10) {
console.log(i)
i++
}
for
語句是while
語句的語法糖
for(let i = 0; i < 10; i++){
console.log(i)
}
while
和for
語句都是由三部分組成:
- 聲明語句
- 條件語句
- 循環體
break
和continue
break
可以跳出當前循環
for(let i = 0; i < 10; i++){
if(i === 5) break
console.log(i)
}
//0
//1
//2
//3
//4
Tips:如果有多層循環就跳不出整個循環了。
for(let i = 0; i < 10; i++){
for(let j = 0; j < 10; j++){
if(j === 5) break
}
console.log(i)
}
continue
會跳出循環中的滿足條件的那一次
for(let i = 0; i < 10; i++){
if(i % 2 !== 0) continue
console.log(i)
}
//0
//2
//4
//6
//8
label
lable
表示是代碼塊的意思
foo: {
console.log(1)
}
大括號內的這塊表示是foo
。
上面講到break
只能跳出當前循環,不過可以配合label
使用,跳出你想跳出的循環。
loop1:
for(let i = 0; i < 10; i++){
for(let j = 0; j < 10; j++){
if(i===5 && j===5) break loop1;
console.log('i: ' + i,'j: '+ j)
}
}
label
也可以配合continue
使用,用法是一樣的。