js部分
js运算符
“+”
1.用作数字运算符,字符串链接。运算符之间自左向右运算。
21.任何数据类型加字符串都等于字符串。
“-” “*” “/” “%” “=” “||”
var num = 1 / 0 ; //num = Infinity(num类型)
var num = 0 / 0 ; //num = NaN(num类型)
var num = -1 / 0 ;//num = -Infinity
优先级“=”最弱,“||”是最强。
“++”,“--”,“+=”,“-=”,“/=”,“*=”,“%=”
1.
var a = 1 ;
var b = a++ +1 ; //a++完成后+1
document.write(b) ; //b=2
2.
var a = 1 ;
var b = a-- + --a ; //--a完成后a=0,a-- + --a=0
3. a = a + 10相当于a += 10。
比较运算符
“>”,“<”,“==”,“>=”,“<=”,“!=”
使用比较运算符比较出来的结果为boolean值。
var a = 1 > 2 ; //false
var a = "a" > "b" ; //false,此时比较asc码值
逻辑运算符
“&&”,“||”,“!”
使用逻辑运算符运算出来的结果是真实的值
例如:
var a = 1 && 2 ; //结果为2
上述代码,执行时先看第一个表达式转换成布尔值的结果,如果结果为真,那么它会看第二个表达式转换成布尔值的结果,然后如果只有两个表达式的话,只看到第二个表达式就可以返回表达式的值了。当第一个表达式转换成布尔值时false时,直接返回第一个表达式的值。
var num = 1 || 3;
当第一个表达式的布尔值为真的时候,之间返回第一个表达式的值。
被认为时false的值: undefined,null,NaN,"",0。
条件语句
if语句
if(条件){
执行语句;
}
if和&&之间的转换
if(1 > 2) {
document.write('a') ;
}
//相当于
1 > 2 && document.write('a') ;
if else if语句
if(score > 90 && score < 100) {
document.write('a');
}else if(score > 80 &&score <= 90) {
document.write('b');
}else if (score > 70 && score <= 80) {
document.write('c');
}else if (score > 60 && score <= 70) {
document.write('d');
}else if (score < 60) {
document.write('you gotta be kidding me!');
}else {
document.write('error!');
}
循环语句
for(var i = 0 ; i < 10 ; i++ ){
document,write('a');
}
执行顺序:
1.先执行一遍条件语句1。
2.执行条件语句2,进行判断,然后执行语句。
3.执行条件语句3,进行i++。
然后循环第二步个第三步,当某次执行完第三步后不满足条件语句2了,则循环停止。
以上for循环也可以写成:
var i = 1;
for(; i ;){
document.write('a');
i++;
if(i == 11){
i = 0; //终止循环
}
}
输出100以内所有可以被3,或5,或7整除的整数
var i = 1;
var count = 0;
for(var i = 0; i < 100; i++){
if(i % 3 == 0|| i % 5 == 0|| i % 7 == 0){
document.write(i + " ");
}
}
以下是运行结果
for循环前后不写东西就相当与while循环
var i = 0;
for(; i < 10;){
document.write(i);
i++;
}
//相当于
while(i < 10){
document.write(i);
i++;
}
输出100以内能被7整除或者个位数有7的整数
var i = 0;
while (i < 100) {
if (i % 7 == 0 || i % 10 == 7) {
document.write(i + " ");
}
i++;
}
以下是运行结果