2020年5月19日总结

139 阅读4分钟

一、认识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

      ");
  • 交互方式四:接收用户输入的一段内容

    • 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