一、简单案例
1.1、内部定义
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!--Scritp标签内,可以写JavaScritp代码-->
<script>
alert("Hello World");
</script>
</head>
<body>
<!--这里也可以放JavaScript代码-->
</body>
</html>
效果:
1.2、外部引入
1.2.1、编写JavaScript文件
1.2.2、引入文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!-- 外部引入JavaScript文件-->
<!-- script标签必须成对出现-->
<script src="js/qj.js"></script>
<!--不用显示定义type属性,也默认就是text/javaScript-->
<script type="text/javascript"></script>
</head>
<body>
<!--这里也可以放JavaScript代码-->
</body>
</html>
效果:
1.3、项目结构
二、基本语法入门
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!--JavaScript严格区分大小写-->
<script>
//1、定义变量
var score = 71;
//2、条件控制
if(score > 60 && score < 70){
alert("60-70");
}else if (score > 70 && score < 80){
alert("70-80");
} else {
alert("other");
}
//3.console.log(source)在浏览器的控制台打印变量!相当于System.out.print()
//4.多行注释
/**
* 与Java的一样
*/
/
</script>
</head>
<body>
</body>
</html>
三、数据类型
数值、文本、图形、音频、视频、、、、、
Number
JavaScript不区分小数和整数
123 //整数123
123.1 //浮点数123.1
1.123e3 //科学计数法
-99 //负数
NaN //not a number
Infinity //表示无穷大
字符串
'abc' "abc"
布尔值
true , false
逻辑运算
&& //两个都为真,结果为真
|| //一个为真,结果为真
! //取反
比较运算符
= //赋值
== //等于(类型不一样,值一样,也会判断为true)
=== //绝对等于(类型一样,值也一样,结果为true)
这里是一个JavaScript的缺陷,建议平常使用===
注意:
- NaN==NaN。这个与所有的数值都不相等,包括自
己 - 只能通过isNaN(NaN)来判断这个数是否是NaN
浮点数问题:
alert((1/3) === 1-(2/3));
尽量避免使用浮点数进行运算,存在精度问题!
console.log(Math.abs(1/3-(1-2/3))<0.00000001);
null和undefined
- null 空
- undefined 未定义
数组
Java的数组值必须是相同类型的对象,JavaScript中不需要这样!
//保证代码的可读性,尽量使用[]
var arr = [1,2,3,4,5,"hello",null,true];
new Array(1,12,3,4,4,5,"hello");
去数组下标,如果越界了,就会
undefined
对象
对象是大括号,数组是中括号·····
每个属性之间使用逗号隔开,最后一个不需要添加
//java 中 Person person = new Person();
//JavaScript中
var person{
name:"Massimo",
age:20,
tags:['js','java','web','....']
}
取对象的值
person.name
person.age
四、严格检查模式
<!--
前提:IDEA需要设置支持ES6语法
'use strict';严格检查模式,预防JavaScript的随意性导致产生的一些问题
必须写在JavaScript的第一行
局部变量建议都使用 let 去定义
-->
<script>
'use strict'
//全局变量
let i = 1;
//ES6 let
</script>