js值类型转换
number | string | boolean
boolean类型转换
num = 0;
var b1 = Boolean(num);
console.log(b1)
转化为数字类型 Number
Number(false)
Number(true)
s3 = "123abc"
parseInt(s3) 转化为整形 s4 = "3.14.15"
parseInt(s4) 转化为浮点型,打印结果 3.14 简写: +s4 +s3 +true Nan 当一个其他类型转化为数字类型的产物
isNaN( Nan ) 判断一个结果是不是Nan
转化为字符串类型 String
String(n1)
n1.toString();
ss3 = "" + nn1 字符串拼接,加法优先做字符串拼接
js运算符
算术运算符
+ - * / % ++ --
加 减 乘 除 取余 自增 自减
js中不区分整形和浮点型
var res = 5 / 2; // 2.5
自增 ++ 自减 --
任何正整数对n取余 结果为 [ 0,n-1 ] num++ => num = num + 1 加号在前,先赋值,在自增
++num => num = num + 1 加号在后,先自增,在赋值
赋值运算符
+= -= *= /= %=
m += 10 => x = x + 10
比较运算符
> < >= <= == === != !==
== 值比较
=== 全等,值与类型都必须相等
x = "123"
y = 123 console.log(y == z); // 只做值比较 => true
console.log(y === z); // 全等:值与类型都必须相等 => false
逻辑运算符
与 && 或 || 非 !
与 && 全为真则真,否则为假
box_ctx =="123" && (box.style.color = "red");
或 || 全为假则假,否则为真
非 ! 非真即假,非假即真 逻辑与的短路效果, 条件1为假, 条件2就不会被执行
box_ctx =="123" && (box.style.color = "red"); 逻辑或的短路效果, 条件1为真, 条件2就不会被执行
三目运算符
res = 判断条件 ? 结果1 : 结果2 //条件满足执行结果1,不满足执行结果2
res = xx == yy ?console.log(1) : console.log(2)
if条件
分支结构
if () { if () {} //if嵌套 } else if () { //if分支
}
……
else {
}
循环结构
for循环
for ( 循环变量; 条件表达式 ; 循环变量增量 ) {}
for ( var i=0; i < 5; i++ ) {}
while循环
while ( i < 5 ) { }
do while循环
do {
} while ( i<5 )
函数
函数的定义
function 函数名(形参列表){
函数体
}
函数的调用
var res = 函数名(实参列表)
函数的参数
// i.个数不需要统一
// ii.可以任意位置具有默认值
// iii.通过...语法接收多个值
函数的返回值
// i.可以空return操作,用来结束函数
// ii.返回值可以为任意js类型数据
// iii.函数最多只能拥有一个返回值
匿名函数:
没有名字的函数,只能在定义的时候自调用一次
function() {} 匿名函数
(function() {})() 匿名函数自调用
三种弹出框
alert(123) 普通弹出框
prompt("请输入") 输入框
confirm("请选择") 确认框