内部标签:
script
标签直接在我们的 HTML 文件中编写 JavaScript 代码,通常我们将script
标签放在head
或body
中:1.我的第一个JavaScript程序.html
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<script>
alert('hello,world');
script>
head>
<body>
body>
html>
外部引入:
JavaScript
代码单独写在一个.js
文件中,再通过script
标签从外部引入:1.我的第一个JavaScript程序.html
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<script src="js/hello.js">script>
<script type="text/javascript">script>
head>
<body>
body>
html>
hello.js
alert('hello,world');
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<script>
// 1. 定义变量
// 变量类型 变量名 = 变量值
var score = 80;
// 2. 条件控制
if(score>=60 && score<=100) {
// alert(); - 弹出框
alert("pass");
}if(score>=0 && score<60) {
alert("fail");
}else {
alert("wrong score");
}
script>
head>
<body>
body>
html>
Console
进入浏览器的控制台,我们可以在里面写 JavaScript 代码。例如:我们可以通过输入console.log()
来打印变量:Sources
来对我们的 JavaScript 代码打断点,一步一步地调试我们的程序:使用var
定义变量(ES6 之后建议使用let
或者const
)
var name = "张三";
var num = 1;
123 // 整数
123.1 // 浮点数
1.123e3 // 科学计数法
-99 // 负数
NaN // Not a Number
Infinity // 表示无限大
'abc'
"abc"
true
false
&& // 与,两个都为真,结果为真
|| // 或,一个为真,结果为真
! // 非,真即假,假即真(取反)
= // 赋值
== // 等于(类型不一样,值一样,也会判断为true),非常不建议使用!!!
=== // 绝对等于(类型一样,值也一样,才会判断为true),建议使用!!!
NaN===NaN
判断结果为false
。原因:NaN
表示不是一个数字,所以它与任何数值都不相等,包括它自己。isNaN(数值)
来判断这个数值是不是NaN
。例如:isNaN(NaN)
- 它的结果为true
。DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<script>
console.log((1/3)===(1-2/3));
script>
head>
<body>
body>
html>
BigDecimal
一样的专门对浮点数进行运算的工具类,所以我们只能使用Math.abs()
取两个数差的绝对值,与一个极小的浮点数(例如0.0000000001)进行比较,当差的绝对值小于这个极小的浮点数时,我们就可以近似地认为这两个浮点数相等,这样就可以进行浮点数的运算了。DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<script>
console.log(Math.abs((1/3)-(1-2/3))<0.0000000001);
script>
head>
<body>
body>
html>
null // 空
undefined // 未定义的
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<script>
var arr = [1,2,3,4,"hello",null,true];
script>
head>
<body>
body>
html>
console.log(arr[数组的下标])
打印数组中指定下标位置的数据:undefined
(未定义的)。DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<script>
new Array(1,2,3,4,"hello",null,true);
script>
head>
<body>
body>
html>
[]
的方式来定义数组。[]
,定义对象用大括号{}
。,
隔开,最后一个属性则不需要添加。DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<script>
var person = {
name: "clown",
age: 3,
tags: ['java','javascript','python','c++']
}
script>
head>
<body>
body>
html>
对象名.属性名
来获取对象的值:"use strict"
- 严格检查模式,可以预防因为 JavaScript 的随意性而产生的一些问题。DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<script>
i = 1;
script>
head>
<body>
body>
html>
console.log(i)
也能获取到i
的值:"use strict"
),它必须被写在 JavaScript 代码的第一行。DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<script>
"use strict";
i = 1;
script>
head>
<body>
body>
html>
console.log(i)
也无法获取i
的值了,而是会报错:DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<script>
"use strict";
let i = 1;
script>
head>
<body>
body>
html>
i
之前加上一个let
,将它定义为局部变量,这样程序就不会出问题了。