Javascript教程第二章:运算符与流程控制
Javascript教程第二章:运算符与流程控制
一.运算符与流程控制
1.赋值运算符与算数运算符
前置和后置,n和n,在不参与其他运算的时候没有区别
let f = 2;
let n = 1;
let d = f + n++;    //f+n,结果为3
let d = f + ++n;    //先算++n,结果为4
2.短路运算的妙用
let a = 1;           正数为true
let b = 0;           0和负数为false
let f = a || b;      JS中默认把从左到右的值第一个为true的值赋给f,所以此时f为1
let sex = prompt("请输入性别") || '保密'  
此时当用户输入的时候,sex为用户输入的内容,当用户没有输入的时候为保密3.网站协议接收验证
function query(el){
    return document.querySelector(el);
}
query('#form').addEventListener('submit',function(event){
    let user = query("[name = 'user']").value.trim();
    let copyright = query("[name = 'copyright']").checked
    let psw = query("[name = 'psw']");
    if(!user || copyright == false || !psw){
        alert("请输入用户名和密码,并仔细阅读协议")
        event.preventDefault();
    }
})4.流程控制:使用ifelse判断密码强度
5.三元表达式
let hd = false ? 2 : 5;switch使用注意事项js
let error = error; 
switch(error){
    case "notice":
    case "error":
        console.log("警告或者提示消息");
        break;
    default:
        console.log("其他类型的错误");
}
此时notice和error采用了相同的处理方式,无break则一直向下匹配
执行到default可以不写default
6.while循环控制
do{
    consolo.log("先进来")
}while(false);7.使用 for循环打印杨辉三角
//第一个for循环控制行数,第二个for循环控制*的数量
for(let i = 0;i < 10; i++){
    for(let n = 0;n < i; n++){
        document.write("*")
    }
    document.write("<br>")
}//控制行数
for(let i = 0; i < 5; i++){
    //打印空白
    for(let kb = 4 - i; kb > 0; kb--){
        document.write("<span>*</span>")
    }
    //打印*的个数
    for(let m = i*2 - 1; m > 0; m--){
        document.write("*");
    }
    //打印换行
    document.write("<br>");
}8.break-continue与 label标签的使用
1.continue : 进入下次循环
for(let i = 1; i <= 10; i++){
    if(i % 2 ){
        //不进行下面的代码,跳到下循环
        continue;
    }
    console.log(i)
}2.break : 终止所有循环
3.label标签:
houdunren: for(let i = 1; i <= 10; i++){
    for(let n = 1; n <= 10; n++){
        if(n % 2 == 0){
            console.log(i,n);
        }
        if((n+i) > 18){
            //当n+i > 18 的时候跳出最外层的循环
            break houdunren;
        }
    }
}9.for-in与for-of使用方法操作
数组循环(也可以遍历对象和DOM元素):
let houdunren = ["hdcs","houdunren"]
for(let key in houdunren){
    console.log(houdunren[key])
}
for(let value of houdunren){
    console.log(value)
}
Array.forEach(function(item,index,array){
    console.log(item)
})for in 取键值,for of取值;