3-javascript流程语句和循环语句

来源:互联网 发布:美林数据股份有限公司 编辑:程序博客网 时间:2024/05/01 04:49
1,流程控制语句
    分支语句
    01) if语句
        if(condition){
            statement1
        }else{
            statement2
        }
        =》condition?s1:s2(三目运算)
        condition表示任意表达式,该表达式求值的结果不一定是布尔类型,如果不是布尔类型,ECMAScript会调用Boolean() 转换函数将这个表达式结果转换为一个布尔类型,如果condition求值结果为true,执行statement1。如果求值结果为false,执行statement2

        if(condition){
            statement1
        }
        statement2

        
    02)switch语句
        switch(expression){
            case val:

            break;

            case val2:

            break;
            default:
        }
      可以在switch语句中使用任何数据类型。
      case的值不一定是常量,也可以是变量,甚至是表达式。
    比较方式: ===(全等方式比较)                expression === vall  default

    //console.log(3 == "3") ->true
        //console.log(3 === "3") ->flase

2. 循环语句    
    01)for语句
        for循环是一种前测试循环语句,但它具有在执行循环之前初始化变量和定义循环后要执行的代码的能力。以下是for循环的语法:
        初始化表达式,控制表达式,循环后表达式
        for(initialization;expression;post-loop-expression){
            //loop option
        }
        例如:
        var sum = 0;
        for(var i=0;i<10;i++){
            sum +=i;
        }
        console.log(i); //10  

        ECMAScript不存在块级作用域,在循环内部定义的变量也可以在外部访问到
    
        死循环
        for(;;){
            //当for中的表达式省略的时候,会创建一个死循环
        }
        while(true){
        
        }
    02) do-while语句  
        do{
        
        }while(condition);
        后测试循环语句,即只有在循环体中的代码执行之后,才会测试出口条件。循环体内的代码最少被执行一次。

    03)    while语句    
        while(condition){
        
        }
        前测试循环语句,即在循环体内的代码被执行之前,就会对出口条件求值。因此,循环体内的代码有可能永远不会被执行。
        while(false){
            //
        }
    04) for-in 语句
        是一种精准的迭代语句,可以用来枚举对象的属性
        for(property in expression){
            statement
        }
        例如:
        打印出window对象中所有的属性
            for(var propName in window){
                console.log(propName);
            }

    例如:var person = {
            name:"terry",
            age:12,
            gender:"男"
        }
        for( var key in person){
            var val = person[key];
            console.log(key+'-'+val);
            //console.log(key);
            //key只能拿到属性名 遍历到person对象的属性名

        }
        /*
        //============获取
        var arr = [1,2,3,42,12];
        for( var key in arr){
            var val= arr[key];
            console.log(key+'-'+);
        }
        */
    label 语句
        使用label可以在代码中添加标签,以便将来使用
        label : for(int i=0;i<10;i++){
            if(i == 5){
                break label;
            }
        }
    循环关键字
       break 跳出循环体
       continue 结束本次循环,进行下一次循环

3. 特殊语句
    with语句
    主要作用是将代码的作用域设置在一个特定的对象中,定义with语句的主要目的是为了简化多次访问同一个对象的工作,但是大量使用with语句会导致性能下降,并且难以维护,所以不建议使用。
        例如:
        var person = {
            name:'terry',
            age:12,
            gender:'男'
        }
        要想访问person对象中的属性需要:
            console.log(person.name);
            console.log(person.age);
            console.log(person.gender);
        但是还可以通过with语句来实现
            with(person){
                console.log(name);
                console.log(age);
                console.log(gender);
            }
4. 函数(第一部分)
    函数实际上是对象,每个函数都是Function类型的实例,具有属性和方法,函数名实际上是指向函数对象的指针。
    1) 表示方法:
        1.函数声明
        function sum(a,b){
            return a+b;
        }
        2.函数表达式
        var sum = function(a,b){
                return a+b;
        }
        解析器在向执行环境中加载数据时,会率先读取函数声明,并使其在执行任何代码之前可用;当执行器执行到函数表达式的代码的时候才会真正的解释执行
    2) 函数的参数
        ECMAScript函数的参数与大多数其他语言中的函数的参数有所不同,ECMAScript函数不介意传递参数的个数以及参数类型,这是因为函数的参数在函数内容是使用一个类数组对象来表示的。这个类数组对象就是arguments
    3) 函数的调用
        在JS中,函数没有重载的概念,两个函数的函数名相同即是同样一个函数,但是Java中不是

            函数名(实参列表)

 ******************************************
 C   Java
基础语法
数据类型
操作符
语句
函数
面向对象
一.分支语句
1. if语句
    if(){

    }


    if(){  

    }else{

  }

    if(){
    }else if(){
    }else{
    }

    var age = 10;
    if(age>18){
        console.log();
    }else{
        console.log():
    }

    三目
        condition?statement1:statement2
            ==>
        if(condition){
            statement1;
        }else{
            statement2;
        }
    
    星期转换器
        1 ==>星期一
        2 ==>星期二
        .
        .
        7 ==>星期天

        1 壹
        2 贰
        ....

2. switch语句
    1.语法结构
    2.执行原理
    可以在switch语句中使用任何数据类型。
          case的值不一定是常量,也可以是变量,甚至是表达式。
    比较方式: ===(全等方式比较)                expression === vall  default
        condition === 常量

    3.break  每个case语句的结尾都应该有break
        default语句如果位于代码的最后,结尾不需要break,反之,则需要  【没有break,代码继续执行 直到找到break 跳出,携带之前执行到所有的结果】  

    switch(condition){
        case 常量1:
            //statement1;
        break;
        case 常量2:
            //statement2;
        break;
        case 常量3:
            //statement3;
        break;
        ...
        default:
            //statementn;
    }
二. 循环语句
    三要素
        初始化条件 i=0;
        结束条件 i>100;
        迭代条件 i++;

    1. for循环
        for(初始化条件;结束条件;迭代条件){
            //循环体
        }

        1~100   5050


    2. while循环
        初始化条件;
        while(结束条件){

            //循环体

            迭代条件
        }
    3. do-while循环
        
        初始化条件
        do{
            迭代条件
            循环体
        }while(结束条件);  (只有do-while 结束有分号)

    4. 增强for循环
        语法
        主要用于遍历对象和数组 获取对象的值和数组的值 但是要经过遍历
        ----------------
        Java
        int[] arr = {1,2,3,4};
        for(int i : arr){
            System.out.println(i);
        }
        ------------
        JS
        var person = {
            name:"terry",
            age:12,
            gender:"男"
        }
        for( var key in person){
            var val = person[key];
            console.log(key+'-'+val);
            //console.log(key);
            //key只能拿到属性名 遍历得到person对象的属性值

        }
        /*
        //============获取数组的值
        var arr = [1,2,3,42,12];
        for( var key in arr){
            var val= arr[key];
            console.log(key+'-'+);
        }
        */


. 警告框 提示框
    方法{
        该方法含义
        参数
        返回值
    }

    alert(param);
        警告框
        param警告内容
        没有返回值
    prompt(param)
        会话框
        param 提问内容
        返回值为用户输入

面向对象
    三大基本特征
        封装
            属性的封装
            方法(函数)的封装

            <script>
                var name ="terry";
                var age = 12;
                //对象
                var person1 = {
                    name:"terry",
                    age: 12
                }
                var person2 = {
                    name:"larry",
                    age: 13
                }
                
                打印九九乘法表

            </script>
        继承

        多态

   
0 0
原创粉丝点击