比较运算符

 

 ==  等于                    

 

 1 如果两个值类型相同,再进行三个等号(===)的比较;

 

 2 如果两个值类型不同,也有可能相等,需根据以下规则进行类型转换在比较:

 

1)如果一个是null,一个是undefined,那么相等;

 

2)如果一个是字符串,一个是数值,把字符串转换成数值之后再进行比较;

 

!==  不等于                 同上;

                                              

===   等于         

                                 

1 如果类型不同,就一定不相等

 

2 如果两个都是数值,并且是同一个值,那么相等;如果其中至少一个是NaN,那么不相等。(判断一个值是否是NaN,只能使用isNaN( ) 来判断)

 

3 如果两个都是字符串,每个位置的字符都一样,那么相等,否则不相等。

 

 4 如果两个值都是true,或是false,那么相等

 

5 如果两个值都引用同一个对象或是函数,那么相等,否则不相等

 

6 如果两个值都是null,或是undefined,那么相等

 

!==    不等于                同上

 

>=   大于等于

 

<=   小于等于

 

>大于

 

<小于

 

注意:根据上边区别选择等于或者不等于条件;

 

逻辑运算符

  • && — 逻辑与; 使得并列两个或者更多的表达式成为可能,只有当这些表达式每一个都返回true时,整个表达式才会返回true.
  • || — 逻辑或; 当两个或者更多表达式当中的任何一个返回 true 则整个表达式将会返回 true.
  • !  — 逻辑非; 对一个布尔值取反, 非true返回false,非false返回true.

 

 

循环语句:

1  for( 初始值; 判断条件; 状态改变)

{

 执行语句

 }

循环语句 执行顺序:1  初始值

                                  2  判断条件

                                 3  执行语句

                                  4 状态改变

走1,2,3,4,2,3,4,2,3,4,。。。。。。。一直到2不满足条件。           (注意第一步直走一遍)

 

 

2 while 语句

while(条件){

 

}

 

 

3 do while语句

do{

执行语句

}while(条件){

执行语句

}

 

while语句与do while语句的区别在于 while语句 先判断条件再决定执不执行语句,do whie语句先执行再去判断循环条件在下边会有例子帮我们理解

 

break      到break前条件停止执行

continue    在循环中跳过continue的条件

 

 

 

例:

 1   for(var i=0 ; i<5; i++)  //i初始值为0,判断条件为i<5的情况下,执行一次i的值+1
 
{ alert(i)
//满足条件情况下,弹出i的值
} 死循环 例:
1 for( var i=0 ;true;i++ ){ //这里边写需要执行的代码 } 2 while(判断条件){ //这里边写满足条件需要执行的代码 } document.white(") //文档写入



3 do{

alert()

}while (判断条件)

 

 

 条件语句:

1)满足条件执行语句,不满足执行语句

 

基本结构 

if(){

}else{

}

 

条件语句执行顺序

 if(这里边填写条件)

{

 满足条件执行语句

 }else{

不满足条件走这

}

 

2) 假如有两个以上的条件,可以在上边基本语句的条件里添加一个else if()

 

基本结构

if(){

}else if(){

}else{

}

 

执行顺序

 if(这里边填写条件)

{

 满足条件执行语句

 }else if(另一个条件){

满足这个条件走这里

}else{

上边两个条件都不满足走这里

}

 

swich语句:

上边的语句只适用于条件较少的情况下,如果想要达到特定条件执行特定语句 我们可以用swich语句来实现

 

基本结构

swich(){

case:

break;;

 

case:

break;

 

case:

break;

 

default:

 

}

 

执行顺序

 

swich(参数){

 

case '':(当参数满足这个值,执行下边语句,然后到break结束)

 

break;

 

 

 

case '':(当参数满足另一个值,执行下边语句,然后到break结束)

 

break;

 

 

 

case '' : (当参数满足这个值,执行下边语句,然后到break结束)

 

break;

 

 

 

default:(都不满足执行下边的语句)

 

 

 

}

因为这个我记得不深刻所以我在下边举个例子;

<label for="weather">请选择天气类型:</label>
        <select id="weather">
            
            <option value="">--请选择--</option>
            <option value="sunny">晴天</option>
            <option value="rainy">雨天</option>
            <option value="snowing">雪天</option>
            <option value="overcast">多云</option>
            
        </select>
        
        <p id="duanluo"></p>
        
    </body>
    
    <script language="JavaScript1.1">
        
        var duanluo1= document.querySelector("select");
        //获取下拉列表的属性
        
        var duanluo= document.querySelector("p").innerHTML;
        //获取段落的文本
        
        duanluo1.addEventListener('change',shijian)
        //监听事件:当下拉列表的值改变时 ,调用函数shijian
        
        
        function shijian(){
            
            var choice=duanluo1.value
            
            switch(choice){
            
            case 'sunny': // 满足chioce='snow'时时执行第43-46行语句,到46行停止执行,执行swich语句以外的其它代码
            
            document.getElementById("duanluo").innerHTML="今天外面天气很好,阳光明媚。穿短裤!去海滩,或者公园,然后再买个冰淇淋,又是美好的一天啊"
            
            break;        // 满足chioce='snow'时,程序执行到这里停止,执行swich语句以外的其它代码
            
            
            case 'rainy':  //当满足chioce='rainy'条件时执行第50-53行语句,到53行停止执行,执行swich语句以外的其它代码
            
            document.getElementById("duanluo").innerHTML="外面正在下着雨;带上雨衣和一条细枝,不要在外面呆太久。"
            
            break;        //满足chioce='snow'时,程序执行到这里停止,执行swich语句以外的其它代码
            
            
            case 'snowing':      //当满足chioce='snowing'条件时执行第57-60行语句,到60行停止执行,执行swich语句以外的其它代码
            
            document.getElementById("duanluo").innerHTML="下雪了--好冷啊!最好还是和一杯热巧克力待在一起,或者去堆雪人也不错。"
            
            break;       //满足chioce='snow'时,程序执行到这里停止,执行swich语句以外的其它代码
            
            
            case 'overcast':////当满足chioce='overcast'条件时执行第64-67行语句,到67行停止执行,执行swich语句(75行以外的)以外的其它代码
            
            document.getElementById("duanluo").innerHTML="天没有下雨,但天空灰暗,随时可能转晴,所以就拿一件雨衣来吧"
            
            break;      //满足chioce='snow'时,程序执行到这里停止,执行swich语句以外的其它代码
                
            
            default:   //以上条件都不满足执行下边功能
            document.getElementById("duanluo").innerHTML="没有选择,所以我们无法判断您要干什么."
            
        
        
         }       
        
          alert("从这行开始执行是swich语句以外的代码")
        
        }
        
        
        
    </script>

 例2

var select = document.querySelector('select');    //获取下拉列表的属性
var html = document.querySelector('.output');     //获取网页整个页面

select.onchange = function() {                    //当下拉列表元素改变时
    
  var choice = select.value;                      //获取下拉列表的的值

 switch(choice) {                                 //swcih语句,带判断条件choice
    case 'black':                                 //如果choice='black'时
      update('black','white');                    //调用函数并往函数update里传两个值
      break;                                      //结束swich
    case 'white':
      update('white','black');
      break;
    case 'purple':
      update('purple','white');
      break;
    case 'yellow':
      update('yellow','darkgray');
      break;
    case 'psychedelic':
      update('lime','purple');
      break;
  }
}

function update(bgColor, textColor) {             //函数update里传两个值
  html.style.backgroundColor = bgColor;           //网页背景颜色改变为函数传入的颜色;
  html.style.color = textColor;                   //网页的字体颜色改变为函数传入值
}
 

 

 

三元运算符

表达式: (条件)?a:b              满足条件执行a,不满足执行b

 

例:

    <body>
        
        <label for="zhuti">主题选择:</label>
        <select id="zhuti">
            
            <option value="">--默认--</option>
            <option value="white">黑色主题</option>
            <option value="black">白色主题</option>>
                
        </select>
        
        
    </body>
    
    <script language="JavaScript1.1">
        
     var beijing=document.querySelector('html');      //获取网页整个页面
     
     var xuanxiang=document.querySelector('select');  //获取下拉列表属性
      
     function gaibian (yanse,ziti) {                  //写方法并进行传值
         
      beijing.style.backgroundColor=yanse;            //调用方法的时候 整个页面的背景色调用传入函数的值
      beijing.style.color=ziti;                       //调用方法的时候 整个页面的字体颜色也调用传入函数的值
    
     }
     
     xuanxiang.onchange=function(){                   //下拉列表属性改变的时候调用这个方法
         
         (xuanxiang.value==='white')?gaibian('white','black'):gaibian('black','white')   
         //如果下拉选项的值是white,那么给gaibian方法传入值(yanse='white',ziti='black'),否则方法改变传入值(yanse='black',ziti='white')
     }