一、认识JavaScript
1.1.JavaScript的作用
- JavaScript的作用是给浏览器指令(命令),负责和浏览器进行沟通
1.2.JavaScript是一门编程语言
-
编程语言就是计算机语言
- 计算机语言就是人和计算机进行交流要学习的语言
-
计算机语言的发展史:
- 机器语言 - 0101
- 汇编语言
- 高级语言
二、JavaScript的历史
- LiveScript -> JavaScript
- 网景提交ECMA语言标准
- ECMASript是JavaScript的标准,描述了该语言的语法和基本对象
- JavaScript是ECMAScript的实现,除了基本实现外,还包括DOM操作和BOM操作
三、JavaScript的特点
3.1.JavaScript是一门解释性语言
-
高级语言按照其运行的方式,又可以分为:
- 编译性语言:代码需要先编译,再运行
- 解释性语言:一行行读取,一行行执行
-
代表语言有哪些?
- 编译性语言:C/C++/Objective-C/Swift等等
- 解释性语言:Python/JavaScript/MATLAB等等
3.2.JavaScript是一门动态类型的语言
- 动态改变变量的类型,虽然灵活,但是不安全
- TypeScript最强大之处就是提供了类型检测
3.3.JavaScript目前可以做哪些工作?
- 网页的交互
- 服务端的开发(Node.js)
- 命令行工具(Node.js)
- 桌面程序,VSCode使用TypeScript开发的
- App(React Native)
- 游戏开发(coco2d-js)
- 小程序开发
四、JavaScript编写位置
4.1.编写位置:
- 在HTML元素中直接执行JavaScript代码
- 书写在script标签中
- 从外部引入的js文件
4.2.注意事项:
- script标签不能写成单标签
- 省略type属性
- 加载顺序 - 自上而下的加载顺序
- JavaScript代码严格区分大小写alert('Hello World');
五、JavaScript注释使用
-
// 1.JavaScript注释的写法一:单行注释
-
/* 2.JavaScript注释的写法二:多行注释 */
-
/**
* 3.JavaScript注释的写法三:文档注释
*/
六、与浏览器如何交互
6.1.交互方式:
-
交互方式一:浏览器弹出弹窗
- alert('Hello World');
-
交互方式二:在控制台打印一段内容
- console.log('Hello World!');
-
交互方式三:DOM操作时(了解)
- document.write("
Hello HTML
");
- document.write("
-
交互方式四:接收用户输入的一段内容
-
var age = prompt("请输入您的年龄");
console.log("您的年龄是:", age);
-
七、如何定义变量
7.1.为什么需要变量
- 需要一种机制,能够反映或者说保存下来程序各个状态的改变
7.2.变量的命名格式
- 定义变量前面必须加上:var -> variable(变量)
- 1.变量的定义同时进行赋值
- 2.给变量重新赋值
- 同时定义多个变量
7.3.变量的命名规则和规范
-
变量命名规则:必须遵守
- 第一个字符必须是一个字母、下划线( _ )或者一个美元符号( $ )
- 其他字符可以是字母、下划线、美元符号或者数字
- 不能使用关键字和保留字命名
-
变量命名规范:建议遵守
- 多个单词使用驼峰标识
- 赋值=两边都加上一个空格
- 一条语句结束后加上分号
八、基础数据类型
8.1.什么是数据类型
- 程序是现实的一种抽象
- 如何查看数据或变量的类型呢?typeof操作符
8.2.JavaScript基本数据类型
- 数值型:Number
- 最大值:Number.MAX_VALUE
- 最小值:Number.MIN_VALUE
- NaN:Not a Number,非数值
- isNaN:用于判断是否不是一个数字
- 字符串型:String
- 用于表示一段文字
- 可以使用双引号也可以使用双引号
- 布尔型:Boolean
- 两个取值:true/false
- 空类型:Null
- 通常一个对象(Object类型)不再使用时,可以赋值为null
- 未定义型:Undefined
- 当一个变量只是声明,没有赋值,它的值就是undefined
- typeof对没有初始化和没有声明的变量都会返回undefined
- 当比较undefined == null时,返回值为true
九、数据类型的转换
9.1.将其他类型转换成数字类型
-
将String转换成数字类型
- Number("123") 123
- Number("abc") NaN
-
将Boolean转换成数字类型
- Number(true) 1
- Number(false) 0
-
parseInt(string, radix)函数:将字符串转换成整数类型,radix表示基数,这里可以理解成进制
- 如果第一个字符时数字或运算符号,那么就开始解析,直到遇到非数字字符,停止解析并得到解析结果
- 如果第一个字符时非数字且非运算符号,则不解析并得到结果NaN
-
parseFloat(string,radix)函数:将字符串转换成小数
9.2.其他类型转换成字符串类型
- 变量.toString,但是变量不能为null或者undefined
- 字符串拼接,变量 + ""
- String(变量),变量只能时字符串类型
9.3.其他类型转换成布尔类型
- Boolean()函数将其他类型转换成布尔类型
- " "(空字符串),0,null,undefined,NaN转换成false
- 其他情况均为true