一、概述
JavaScript是一门最流行的脚本语言。
同时JavaScript web 开发人员必须学习的 3 门语言中的一门:
- HTML 定义了网页的内容。
- CSS 描述了网页的布局。
- JavaScript 网页的行为。
JavaScript(简称“JS”) 是一种具有函数优先的轻量级,解释型或即时编译型的高级编程语言。虽然它是作为开发Web页面的脚本语言而出名的,但是它也被用到了很多非浏览器环境中,JavaScript 基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式和声明式(如函数式编程)风格。
注意:JavaScript的标准是ECMAScript
二、js的组成
三、JavaScript引入方式
1.嵌入式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script type="text/javascript">
//内嵌式,JavaScript可以写在head或body中
alert('我是使用内嵌式弹出来的');
</script>
</head>
<body>
<!--<script type="text/javascript">
//内嵌式
alert('我是使用内嵌式弹出来的');
</script>-->
</body>
</html>
2.外链式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!-- 外链式 JavaScript-->
<script type="text/javascript" src="02_js初次.js"></script>
</head>
<body>
</body>
</html>
3.行内式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<!--行内式-->
<a href="javascript:alert('行内式弹出框!')">Test</a>
<input type="button" value="点我试试" name="普通按钮" onclick="alert('我是普通按钮!')">
</body>
</html>
四、JavaScript defer和async属性
添加方式:
<script type="text/javascript" defer="defer" async="true/false" src="js文档地址"></script>
defer和async的比较
相同点:
- 加载文件时不阻塞页面渲染;
- 对于inline的script无效;
- 使用这两个属性的脚本中不能调用document.write方法;
- 有脚本的onload的事件回调;
- 允许不定义属性值,仅仅使用属性名;
不同点:
- html的版本html4.0中定义了defer;html5.0中定义了async;这将造成由于浏览器版本的不同而对其支持的程度不同;
- 执行时刻:每一个async属性的脚本都在它下载结束之后立刻执行,同时会在window的load事件之前执行。所以就有可能出现脚本执行顺序被打乱的情况;每一个defer属性的脚本都是在页面解析完毕之后,按照原本的顺序执行,同时会在document的DOMContentLoaded之前执行。
这两个属性会有三种可能的组合:
- 如果async为true,那么脚本在下载完成后异步执行。
- 如果async为false,defer为true,那么脚本会在页面解析完毕之后执行。
- 如果async和defer都为false,那么脚本会在页面解析中,停止页面解析,立刻下载并且执行。
五、JavaScript的注释
单行注释 //
多行注释
/*
*/
六、JavaScript的输入输出语句
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
// alert(); 输出语句,以弹出框显示给访问用户
alert('弹出框显示给访问用户!');
// 输入语句 prompt(string,string) string | null;
prompt('请输入你的年龄:');
// 在控制台输出语句
console.log('我是在浏览器控制台输出的!');
</script>
</head>
<body>
</body>
</html>
第二大块 变量
概述
从字面上看,bai变量是可变的量;
从编程角度讲,变量是用于存储某种/某些数值的存储器。
注:
1、变量名可以任意取名,但要遵循命名规则:
1.变量必须使用字母、下划线(_)或者美元符($)开始。
2.然后可以使用任意多个英文字母、数字、下划线(_)或者美元符($)组成。
3.不能使用JavaScript关键词与JavaScript保留字。
2、声明和赋值变量
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
// 声明和赋值变量 variable 可变的
var n='画江湖';
// 然后输出变量
alert(n);
console.log(n);
</script>
</head>
<body>
</body>
</html>
3、更新变量
一个变量被重新赋值后,它原有的值会被覆盖,以最后一次赋值为准。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
var name='画江湖01';
console.log(name)
var name='画江湖02';
console.log(name);
</script>
</head>
<body>
</body>
</html>
6、声明多个变量
声明多个变量,只需要一个var 然后声明的变量用逗号隔开。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
var name='画江湖',
age=30,
gz=3000;
</script>
</head>
<body>
</body>
</html>
7、声明变量的特殊情况
8、两个变量之间的交换
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
var num01=10;
var num02=100;
var num; //交换的中间变量
num=num01;
num01=num02;
num02=num;
console.log(num01);
console.log(num02);
</script>
</head>
<body>
</body>
</html>