JS-day1[基础,流程控制,错误异常处理]
JS中的数据类型:
基本数据类型:
number //数值
boolean //布尔值
string //字符串
undefind //undefind
null //null
引用数据类型:
object
数字类型(number)
不区分整数型数值和浮点型数值
var num=10; //这是整数10
var num=10.0 //整数,解析成10
var num=.1 //表示0.1
var num=10. //整数,解析成10
16进制数据前加上0x,八进制前面加0
字符串类型(string)
是由unicode字符、数字、标点符号组成的序列,字符串常量首尾由单引号或双引号括起,JavaScript中单引号会被自动转为双引号
字符串中部分特殊字符必须加上右划线"\";常用的转义字符 \n换行,\'单引号,\"双引号,\\右划线
布尔类型(boolean)
仅有两个值"true"和"false",也代表1和0,可以不直接进行运算(true+1=2,false+1=1)
主要用于JavaScript中的控制语句。
Null和Undefined类型
Undefined类型
Undefined 类型只有一个值,即 undefined。当声明的变量未初始化时,该变量的默认值是 undefined。
当函数无明确返回值时,返回的也是值 "undefined";
Null类型
另一种只有一个值的类型是 Null,它只有一个专用值 null,即它的字面量。值 undefined 实际上是从值 null 派生来的,因此 ECMAScript 把它们定义为相等的。
尽管这两个值相等,但它们的含义不同。undefined 是声明了变量但未对其初始化时赋予该变量的值,null 则用于表示尚未存在的对象。如果函数或方法要返回的是对象,那么找不到该对象时,返回的通常是 null。
运算符:
算术运算符: + - * / % ++ -- 比较运算符: > >= < <= != == === !== 逻辑运算符: && || ! 赋值运算符: = += -= *= /= 字符串运算符: + 连接,两边操作数有一个或两个是字符串就做连接运算
算术运算符:
注意-1:自加减的一点问题
var x = 10; // x++ : 先赋值载计算 // var ret= x++; // x = x+1 ret为10 x为11 // 先计算后赋值 var ret = ++x; // x = x+1 ret为11 x为11 console.log(x); console.log(ret);
注意-2:
1. "-"减号还可以表示负号 例如:x=-y
2."+"加号还可以用于字符串的连接 例如:"abc"+"123"="abc123"
注意-3:
JavaScript是一门弱类型语言。
你甚至可以这样玩:
var x = 10; var y = "10"; res = y+x; console.log(x==y); 结果为: true
注意-4:Nan
属于数字类型,只有在转换一个不能被转换为number的字符串时会产生这个值。
流程控制:
- 顺序结构
- 分支结构
- 循环结构
顺序结构:从上向下顺序执行
<script>
console.log(“星期一”);
console.log(“星期二”);
console.log(“星期三”);
</script>
分支结构: 其实并没有缩进要求,JavaScript中使用()和{}来区分,但是为了美观所以缩进下
if(表达式){
执行语句
}
else if(表达式){
执行语句
}
else{
执行语句
}
示例:
var week; week=1; if (week==1){ alert("week=1") } else if (week==50){ alert("week=50") } else { alert("None") }
switch-case结构:
var week=1; switch (week){ case 1:console.log("星期一");break; //如果week等于1,就打印星期一 case 2:console.log("星期二");break; case 3:console.log("星期三");break; case 4:console.log("星期四");break; case 5:console.log("星期五");break; case 6:console.log("星期六");break; case 7:console.log("星期日");break; default:console.log("非法输入");break; }
循环结构:
// for 循环方式1:条件循环 for (var i=0;i<10;i++){ console.log(i); } // for 循环方式2:遍历循环 var arr=[111,222,333]; for (var i in arr){ console.log(i,arr[i]) } // while循环 var count=0; var sum=0; while (count<101){ sum+=count; count++; } console.log(sum); var sum2=0; for (var i=0;i<101;i++){ sum2+=i } console.log(sum2);
同样支持break和continue:
break:跳出循环
continue:跳过本次循环
异常处理:
//类似Python的try从上往下执行,只要有一个抛错就结束运行
try{
代码
}
catch (e) {
//如果try中抛出了错误,则会执行这里的代码
//e是一个局部变量,用来指向Error对象或其他抛出的错误对象
}
finally{
//无论try中有没有抛出错误都会执行这里的代码
}
注:主动抛出异常使用 throw Error("XXX")
浙公网安备 33010602011771号