比较运算符
== 等于
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')
}