一、基本类型和引用类型
基本类型:number(数字)、string(字符)、boolean(布尔)、undefined(赋值)、null(空)
引用类型:array(数组)、object(对象)、function(函数)
区别:基本类型只传值。引用类型既传值,也传址。
二、
所有 JavaScript 全局对象、函数以及变量均自动成为 window 对象的成员。
全局变量是 window 对象的属性。
全局函数是 window 对象的方法。
三、数据类型的转换
1、自动转换,不需要程序员干预,JS自动完成的类型转换,仅讨论算术计算中的自动转换
A、算术计算中,一切数据都默认转为数字,在计算。
Boolean类型:true=1 false=0特殊情况:
如果数据无法被转为数字类型会被转为NaN
NaN不等于,不大于,不小于任何值
NaN参与任何算数运算结果永远为NaN
B、在+运算中,碰到字符串,+就变为字符串拼接
另一个不是字符串的数据,被自动转为字符串
<script>
/*boolean,string*/
var a=true; //1
var b=false; //0
// console.log(b+1)
var c="hello";
var d=c+1;
console.log(typeof d)
</script>
2、强制转换
①、任意类型转换为字符串
<script>
var a=1;
// a.toString
// String(a)
console.log(typeof String(a))
</script>
②、任意类型转换为数字
首字母必须是数字,只要碰到一个非数字字符就停止,自动跳过开头的空各符。
<script>
var a=true;
/*Number()
* */
var b="12";
console.log(Number(a));
console.log(Number(b));
</script>
③、任意类型转换为Boolean
只有传“ 0,NaN,null,"空格",undefined”为false,其他都为true。
<script>
/*0,NaN,null,"",undefined*/
var a="hello";
console.log(Boolean(a))
</script>
④、数字转换为整数或浮点数(parse)
<script>
/*将字符串转换为数字
首字母必须是数字
* */
var a="12px343";
var b=parseInt(a);
console.log(b);
var c="12.34px";
console.log(parseFloat(c));
</script>
四、运算
1、算术运算(+,-,,/,%,++,--)(前加加:先自增,后给值。后加加:先给值,后自增。)
2、赋值运算(=,+=,-=,=,/=,%=)
3、比较运算(>,<,==,>=,<=,!=)
4、逻辑运算(&&,||,!)或与非五、mouse鼠标事件
this 是指在事件中,表示执行事件的当前对象。
<script>
var test=document.getElementById("test");
test.onmouseover=function(){
this.style.backgroundColor="pink";
};
test.onmouseout=function(){
this.style.backgroundColor="red";
}
</script>
六、if else 和switch case
if else(如果满足条件,否则。)
<script>
var a=10;
var b=20;
/*分支语句*/
if(a>b){
console.log("a大于b")
}else if(a==b){
console.log("a=b")
}else{
console.log("a小于b")
}
</script>
switch case
<script>
var name="chengchao";
switch (name)
{
case "h":
console.log("a>b");
break;
case "hllo":
console.log("a==b");
break;
case "chengchao":
console.log("a<b");
break;
default:
console.log("都不符合");
}
</script>