JavaScript基本语法、语句Statement
1 JavaScript基本语法++
1.1隐式转换
如果运算不能进行下去,内部就会尝试进行数据类型的转换支持隐式转换的运算:逻辑运算、关系运算、数学运算。
如var num1 = number.value;
num1 - 10 => Number(num1) - 10;
num1 + 10 => num1 + String(10);
内部会自行对数据类型进行转换,以支持运算进行。
1.2 一元运算 >(运算)
1.2.1返回值
即运算后得到的值。
1.2.2 ++自增1
在原来的数值基础上加1,分前置和后置。
后置如,var numb = 10; num1 ++; //此时num1的返回值值为11 ;
var result = num1++ ; result值为10,因为result为num++的值,num++返回值为加1之后的值 。
前置如,var numb = 10; ++num1 ; //此时num1的返回值值为11 ;
var result = ++num1 ; result值为11,因为result为++num的值,num++返回值为加1之后的值 。
1.2.2 --自减1
1.3 进制
1.3.1二进制
var num = 0b10101101;
1.3.2八进制
var num = 0o0123
1.3.3十进制
1.3.4十六进制
var num = 0xef9302;
1.3.5其他转十进制
var x='110';
parseInt(x,2);
parseInt(x,8);
parseInt(x,16);
1.3.6十进制转其他
var number = 20;
number.toString(2); //转成2进制
number.toString(8);//转成8进制
number.toString(16);//转成16进制
十进制在进制转换中起到了桥梁作用,其他进制先转成十进制,再转成其他进制。
1.4相关术语
1.4.1表达式的概念
由运算符和操作数(变量或常量)组成的式子;
算术运算符组成的式子叫算术表达式;
关系运算符组成的式子叫关系表达式或者条件表达式;
逻辑运算符组成的式子叫做逻辑表达式,如:2+3;a+5;c>3; a&&b等。
1.4.2程序的三大流程控制
我们的计算机在执行一个程序的时候,最基本的方式是一条语句接一条语句的执行。但不可能所有的问题都能用顺序执行方式就能解决,总会有一些跳转。采用结构化的程序设计,可以大大提高开发程序的速度、提高程序的可读性、程序运行的速度和效率。
顺序:从上朝下执行的代码就是顺序;
分支(选择):根据不同的情况,执行对应代码;
循环:重复做一件事情;
2 语句Statement
2.1条件判断语句
2.1.1 if语句
1 if单分支
if(条件){
//条件成立(返回true)时,执行这里的代码,否则不执行
}
2 if双分支
当if括号内的表达式结果成立,执行执行语句1,否则执行执行语句2。
if(条件){
语句1
//条件成立(返回true)时,执行这里的代码,忽略以下代码
}else{
语句2
//条件不成立(返回false)时,执行这里的代码
}
3 if多分支
从上往下,满足哪个条件就执行其相对应的语句,都不满足时,执行最后的else的语句,只能进入其中之一。
if(条件1){
//条件1成立(返回true)时,执行这里的代码,忽略以下代码
}else if(条件2){
//条件2成立(返回true)时,执行这里的代码,忽略以下代码
}else{
//以上条件都不成立(都返回false)时,执行这里的代码
}
2.1.2 三元运算
格式:条件 ? 条件成立代码 : 条件不成立代码 ;
var a=20;
var b = 50;
var sum = a>b ? a-b : a+b;
2.1.3 switch语句
switch(表达式) {
case value1:
//如果表达式的值恒等于value1,代码从这里开始执行
break;
case value2:
//如果表达式的值恒等于value2,代码从这里开始执行
break;
case value3:
//如果表达式的值恒等于value3,代码从这里开始执行
break;
case value4:
//如果表达式的值恒等于value4,代码从这里开始执行
break;
default:
如果以上条件都不成立,默认执行这里的代码
}
switch语句在比较值时使用的是全等操作符,因此不会发生类型转换;
case: 当符合条件时,会从符合条件的那一条case语句开始,依次顺序执行;
break: 跳出switch语句;
default: 当所有的case都不满足的情况下会执行defalut下面的语句;
2.2 循环语句
2.2.1 while循环
//变量初始化
while(条件){
//条件成立就会不断地执行这里的代码,直到条件不成立
//所以这里一般会伴随着条件的更新
}
2.2.2 do...while
//变量初始化
do {
//不管条件是否成立,先执行一次这里的代码,再进行条件判断,如果条件依然成立,则再次执行这里的代码,依此类推
//所以这里一般会伴随着条件的更新
} while(条件)
2.2.3 for循环
for(变量初始化; 条件判断; 变量更新){
//循环条件成立,则执行这里的代码
}
注意:(;;)中的两个;必须写。
案例分析
<script type="text/javascript">
var result = '';
for(var num = 1; num <= 10; num++){
result = result + '*' + ' ';
document.write(result + '<br />');
}
</script>
<script type="text/javascript">
var total = -1;
for(var num = 15 ; num <= 50 ; num = num + 5){
total++;
}
console.log(total);
</script>
1.循环语句中的变量更新不一定只有num++,也可以为 num += 5 / num = num + 5 ;
2.在循环中,for(),while(),括号中的内容只是循环的条件,而{ }中的代码为循环成功时执行的代码,所以( )中的变量不一定出现在{ }。
3 练习与作业整理
3.1 innerHTML
获取对象的内容或向对象插入内容,对象为html中的双标签元素。
如,var output = document.getElementById(‘id名’); //获取到对象内容 ;
output.innerHTML = ‘偶数’/ num ...; 向对象插入内容