1.js里的数据类型和运算符
JavaScript里有原始类型和引用类型,可以通过typeof函数来返回数据类型
<body>
</body>
<script>
//typeof 这个函数可以返回数据类型
document.write(typeof 3+"<br>");//number
document.write(typeof 3.14+"<br>");//number
document.write(typeof "A"+"<br>");//string
document.write(typeof "Hello"+"<br>");//string
document.write(typeof true+"<br>");//boolean
document.write(typeof false+"<br>");//boolean
document.write(typeof null+"<br>");//object
var a;
alert(typeof a);//undefined(未定义的)
</script>
JavaScript里的运算符与Java类似,但是比较符==与===有所不同。==是只比较值,===是既比较值又比较类型
<body>
</body>
<script>
var age=20;
var _age="20";
var $age=20;
//注意不能是document.write(age == _age+"<br>");否则显示false
document.write(age == _age);//true ,只比较值
document.write("<br>");
document.write(age === _age);//false ,类型不一样
document.write("<br>");
document.write(age === $age);//true ,类型一样,值一样
<script>
JavaScript中可以通过parseInt()函数来进行将其他类型转换成数值类型,还有非常重要的一点是:0,null,undefined,"",NaN理解成false,反之理解成true。
<body>
</body>
<script>
//类型转换:parseInt其他类型转换为数字(看的应该是首字符)
document.write(parseInt("12")+"<br>");//12
document.write(parseInt("12A45")+"<br>");//12
document.write(parseInt("A45")+"<br>");//NaN (not a number)
//在js中,还有非常重要的一点是:0,null,undefined,"",NaN理解成false,反之理解成true。
</script>
以及if( ){ },其中( )内根据不同的值,自动转为true和false。结果如下
<script>
if(1){ //只有这个为true,打印内容,下面几个都转为false不打印
document.write("除0和NaN其他数字都转为 true"+"<br>");
}
if(0){
alert("0 转换为false");
}
if(NaN){
alert("NaN 转化为false");
}
if(""){
alert("空字符串为false,其他都是true");
}
if(null){
alert("null 转化为false");
}
if(undefined){
alert("undefined 转化为false");
}
//流程控制语句if,switch,for等和java保持一致。
// 需要注意的是:在js中,0,null,undefined,"",NaN理解成false,反之理解成true
</script>
JavaScript中用function定义函数的2种格式:
<script>
/*
定义函数第一种:
function 函数名(参数1,参数2..){
要执行的代码
}
*/
// function add(a,b){
// return a+b;
// }
//定义函数第二种:
var add=function(a,b){
return a+b;
}
let result=add(10,15,20,30);
document.write(result+"<br>");
//在JavaScript中,函数的调用只需要名称正确即可,参数列表不管的。
// 如上述案例,10传递给了变量a,15传递给了变量b,而30和40没有变量接收,但是不影响函数的正常调用。
<script>