目录
什么是JavaScript
JavaScript
- JavaScript(简称:JS)是一门跨平台、面向对象的脚本语言。是用来控制网页行为的,它能使网页可交互。
- JavaScript和Java是完全不同的语言,不论是概念还是设计。但是基础语法类似。
- JavaScript在1995年由Brendan Eich发明,并于1997年成为ECMA标准。
- ECMAScript 6(ES6)是最新的JavaScript版本(发布于2015年)。
ECMA:ECMA国际(前身为欧洲计算机制造商协会),制定了标准化的脚本程序设计语言ECMAScript,这种语言得到广泛应用。而JavaScript是遵守ECMAScript的标准的。
JavaScript学习内容:
- JS引入方式
- JS基础语法
- JS函数
- JS对象
- JS事件监听
JS引入方式
介绍
- 内部脚本:将JS代码定义在HTML页面中
- JavaScript代码必须位于<script></script>标签之间
- 在HTML文档中,可以在任意地方,放置任意数量的<Script>
- 一般会把脚本置于<body>元素的底部,可改善显示速度
<script>
alert("Hello JavaScript");
</script>
- 外部脚本:将JS代码定义在外部JS文件中,然后引入到HTML页面中
- 外部JS文件中,只包含JS代码,不包含<script>标签
- <script>标签不能自闭合
<script src="demo.js"></script>
演示
// demo.js
alert("Hello JavaScript");
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
</body>
<!-- 内部脚本
<script>
alert("Hello JavaScript");
</script> -->
<!-- 外部脚本 -->
<script src="demo.js"></script>
</html>
JS基础语法
书写语法
- 区分大小写:与Java一样,变量名、函数名以及其他一切东西都是区分大小写的
- 每行结尾的分号可有可无
- 注释:
- 单行注释://注释内容
- 多行注释:/*注释内容*/
- 大括号表示代码块
//判断
if(count == 3){
alert(count);
}
输出语句
- 使用 window.alert() 写入警告框
- 使用 document.write() 写入HTML输出
- 使用 console.log() 写入浏览器控制台
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>基础语法1</title>
</head>
<body>
</body>
<script>
window.alert("Hello JavaScript"); //浏览器弹出警告框
document.write("Hello JavaScript"); //写入HTML,在浏览器展示
console.log("Hello JavaScript"); //写入浏览器控制台
</script>
</html>
变量
- JavaScript中用 var 关键字(variable的缩写)来声明变量。
- JavaScript是一门弱类型语言,变量可以存放不同类型的值。
- 变量名需要遵循如下规则:
- 组成字符可以是任何字母、数字、下划线(_)或美元符号($)
- 不能以数字开头
- 建议使用驼峰命名
注意事项
- ECMAScript 6新增了 let 关键字来定义变量。它的用法类似于 var,但是所声明的变量,只在 let 关键字所在的代码块内有效,且不允许重复声明。
- ECMAScript 6新增了 const 关键字,用来声明一个只读的常量。一旦声明,常量的值就不能改变。
数据类型、运算符、流程控制语句
数据类型
- JavaScript中分为:原始类型和引用类型。
原始类型
- number:数字(整数、小数、NaN (NotaNumber) )
- string:字符串,单双引皆可
- boolean:布尔。true,false
- null:对象为空
- undefined:当声明的变量未初始化时,该变量的默认值是 undefined
使用 typeof 运算符可以获取数据类型:
<script>
var a = 20;
alert(typeof a);
</script>
参考官方文档:ECMAScript 原始类型
运算符
运算符
- 算术运算符:+,-,*,/,%,++,--
- 赋值运算符:=,+=,-=,*=,/=,%=
- 比较运算符:>,<,>=,<=,!=,==,===
- 逻辑运算符:&&,||,!
- 三元运算符: 条件表达式 ? true_value : false_value
== 与 ===
- == 会进行类型转换,=== 不会进行类型转换
<script>
var a = 10;
alert(a == "10"); //true
alert(a === "10"); //false
alert(a === 10); //true
</script>
类型转换
- 字符串类型转为数字:
将字符串字面值转为数字。如果字面值不是数字,则转为NaN。
- 其他类型转为boolean:
Number:0 和 NaN为 false,其他均转为 true。
String:空字符串为 false,其他均转为 true。
Null 和 undefined:均转为 false。
流程控制
- if...else if... else...
- switch
- for
- while
- do...while
用法与Java差不多,参考官方文档:JavaScript 语句参考手册
END
学习自:黑马程序员——JavaWeb课程