一、什么是JavaScript
1.1 概述
JavaScript是一门世界上最流行的脚本语言
ECMAScript它可以理解为是JavaScript的一个标准
二、引入JavaScript
JS可以写在head里面也可以写在body里面
1、内部标签
<script>
//.....
</script>
2、外部引入
文件abc.js
test.html
<script type="text/javascript"></script>
3、弹窗的使用
内部标签
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!--script标签内,写JavaScript代码-->
<!--内部标签-->
<!--<script>
alert('hello,world');
</script>-->
</head>
<body>
<!--这里也可以存放JS代码-->
</body>
</html>
外部引用
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!--script标签内,写JavaScript代码-->
<!--外部引入-->
<!--注意: 必须成对出现-->
<script src="JS/js.js"></script>
<!--不用显示定义type,也默认就是javascript-->
<script type="text/javascript"></script>
</head>
<body>
<!--这里也可以存放JS代码-->
</body>
</html>
JS文件
alert('hello,world');
三、 基础语法
3.1定义变量( var)
一般会设置为ECMAScript6
<script>
//定义变量
var i=12;
alert(i);
</script>
3.2条件控制(if…else)
JS严格区分大小写
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
//JS严格区分大小写
//条件控制
if(score>60 && score<70){
alert("60-70")
}else if(score>70 && score<80){
alert("70-80")
}else if(score>80 && score<90){
alert("80-90")
}else{
alert("other")
};
</script>
</head>
<body>
</body>
</html>
在浏览器调试的方法
在浏览器的控制台打印变量console.log(score)
浏览器打断点
在源代码那一栏可以打断点,当打完断点后,刷新网址
三、 数据类型
JS不区分小数和整数
123 //整数
123.3 //小数
1.23e3 //科学计数法
-99 //复数
NaN //not a number
infinity //表示无限大
变量
字符串
‘abc’ “abc”
布尔值
true false
逻辑运算
&&
||
!
比较运算符
=
==等于(类型不一样,值一样,也会判断为true)
===不等于(类型一样,值一样,也会判断为ture)
这是一个JS缺陷,坚持不要用==比较
须知:
NaN===NaN这个与所有数值都不相等,包括本身NaN
只能通过isNaN来判断这个数是否是NaN
浮点数问题:
console.log((1/3)===(1-2/3))
尽量避免浮点数进行运算,存在精度问题
console.log((Math.abs(1/3)===(1-2/3))<0.0000000001)
null和undefined
null空
undefined未定义
数组:
不一定是相同类型的对象
var a = [1,4.5,ture,null,"hhh"];
//一般使用var定义数组,而不使用new
var a = [1,4.5,ture,null,"hhh"];
new array(1,4,34,"hddd",null)
取数组下标,如果越界了,就会undefined
对象
对象是大括号,数组是中括号
每个属性之间用逗号隔开,最后一个不需要
var person={
name:"xiaoming",
age:5,
tags:['java','js','web','...']
}
取对象的值
person.age
5
person.name
'xiaoming'
person.tags
(4) ['java', 'js', 'web', '...']