文章目录
变量以及数据类型
变量
- JS为弱类型语言,常用变量类型(字符串、数字、布尔型、对象等)都声明var。
- 变量命名规则
- 第一位必须是字母。
- 可以包含字母、数字、下划线、美元符号$。
- 变量名不能是关键字或保留字。
- 通常情况下,统一使用小驼峰命名法(camelCase)。
赋值方法
先声明再赋值
var a;
a = 1;
同时声明并赋值
vaar a = 1;
声明多个变量
var a = 1,b = 2,c = 3;
var a,b,c;
a = 1;
b = 2;
c = 3;
直接使用(不推荐)
a = 1;
数据类型
- string
- number(支持整数、浮点数;支持八进制 -0开头如010、十六进制 -0x开头,如0x0f)
- boolean(值为true或false)
- object(引用类型:object、array、function)
- undefined
- null
使用typeof()查看数据类型
var a = "abc";
console.log(trpeof(a));//输出string
null返回为object
var a = null;
console.log(typeof(a));//object
转换为数字
- parseInt()
parseInt("123"); //123
parseInt("123.4"); //123
parseInt("123abc123"); //123
parseInt("abc123"); // NaN
//第二个参数为可选,表示要解析的数字的基数,取值范围2~36
parseInt("11",16);
//将11视为16进制,转换为十进制后输出17
- parseFloat
parseFloat("123"); //123
parseFloat("123.4"); //123.4
- Number()
Number("123"); //123
Number("123.4"); //123.4
Number("123a"); // NaN
//Number可以转换布尔值和null
Number(true); //1
Number(false); //0
Number(null); //0
Number(""); //0
转换为字符串
String()
var a = 1;
var b = String(a);
console.log(b); //输出字符串"1"
toString()
var a = 1;
var b = a.toString();
console.log(b); //输出字符串"1"
区别
var a;
var b = String(a);
console.log(b); //输出字符串"undefined"
var c = a.toString() //报错
转换为布尔型
Boolean()
Boolean();
Boolean(0);
Boolean(null);
Boolean("");
Boolean(undefined);
Boolean(false);
Boolean(NaN);
除了上面7个值返回false外,其他均返回true
运算符及判断语句
运算符号
+ | 加法 | += | x+=y;x=x+y | == | 等于 |
---|---|---|---|---|---|
- | 减法 | -= | x-=y;x=x-y | === | 值及类型均相等 |
* | 乘法 | *= | x*=y;x=x*y | != | 不等于 |
/ | 除法 | /= | x/=y;x=x/y | !== | 值与类型均不等 |
% | 余数 | %= | x%=y;x=x%y | > | 大于 |
++ | 自增 | && | 与 | >= | 小于 |
– | 自减 | || | 或 | < | 大于等于 |
= | 赋值 | ! | 非 | <= | 小于等于 |
- 使用==时,只比较值是否相等
var a = 1, b = "1";
a==b; //true
a===b; //false
- 使用+或+=时,当其中一个值为字符串时,会把另一个值转换为字符串再进行拼接
var a = 1, b = "abc";
console.log(a + b); //输出字符串1abc
- 当相加的两个值为数字、布尔值、null时,会把布尔值和null转换为数字再相加
var a = null, b = true;
console.log(a + b); //输出数字1
判断语句
IF语句
if (条件表达式) {
//js语句1
} else {
//js语句2
}
//实例
var age = 20;
if (age > 18) {
console.log("已成年");
} else {
console.log("未成年");
}
当js语句只有一条时,可以省略花括号
if (条件表达式)
//js语句1
else
//js语句2
//实例
var age = 20;
if (age > 18)
console.log("已成年");
else
console.log("未成年");
三元表达式
(条件表达式) ? (js语句1) : (js语句2)
var age = 20;
age > 18 ? console.log("已成年") : console.log("未成年");
IF语句嵌套
var num = Number(prompt("输入一个数字"));
if(isNaN(num)){
alert("输入错误")
}else{
if(num>20){
alert("大于20")
}
else{
alert("小于20")
}
}
三元表达式(嵌套)
isNaN(num)?alert("输入错误"):(num>20?alert("大于20"):alert("小于20"))
SWTCH语句
switch(表达式){
case 值1:
//JS语句1
break;
case 值2:
//JS语句2
break;
default:
//JS语句3
break;
}
//实例
var grade = parseInt(num / 10)
switch (grade) {
case 10:
case 9:
alert("优秀");
break;
case 8:
alert("良好");
break;
case 7:
alert("中等");
break;
case 6:
alert("及格");
break;
default:
alert("不及格");
break;
}