1.JavaScript 基础回顾

JavaScript 基本组成

  • JavaScript由几部分构成?

BOM、DOM、ECMAScript

数据类型

  • 数据类型有哪些?

js数据类型分为两大类,6种。

  • 简单数据类型:

    • string
    • boolean
    • number
    • null
    • undefined
  • 复杂数据类型:

    • object
  • 内置对象有哪些?

Array、Date、Math、Window、document、String、Number、Boolean

  • 如何判断数据类型?
  • typeof
  • typeof有一种数据类型是无法判断出来的 : null,因为typeof null == 'obejct'
  • 因为typeof null结果为'object',所以造成typeof判断对象类型存在不准确性
  • typeof运算后的返回结果,类型为字符串
  • typeof返回结果固定为如下几个值:'string'、'number'、'boolean'、'object'、'undefined'、'function'

基本类型与引用类型的赋值问题

  • 基本类型

简单数据类型赋值时赋的是具体的值。

  • 引用类型

复杂数据类型赋值时赋的是地址。

运算符

  • 算术运算符 + %

+ 作用:

% 取余数

  • 逻辑运算符 && || !
  • &&

    • 有一个false就是false,两个true才是true
    • 从左向右依次运算,运算时会把值转换为布尔类型,遇到false,
      则返回参与运算的具体值(注意不是true或false),如果没有遇到false,返回最后一个参与运算的值。
  • ||

    • 从左向右依次运算,运算时会把值转换为布尔类型,遇到true,
      则返回参与运算的具体值(注意不是true或false),如果没有遇到true,返回最后一个参与运算的值。
  • !

    • 取反,返回值相反的布尔值
    • !!可以得到一个数据的布尔值
  • 相等运算符 == === != !==
  • ==

    • 先自动进行数据类型的隐式转换,转换为相同的数据类型再进行比较。
  • ===

    • 比较数据类型与具体的值。
  • 三元运算符 ? :

先计算?号前面的表达式结果,结果为true返回:号前面的表达式运算结果,否则后面的。

布尔类型转换

  • 如何把数据转换为布尔类型?

    • !!
    • Boolean
  • 哪些数据在转换为布尔类型时结果为false?

    • 0
    • null
    • undefined
    • ''
    • NaN
    • false

语句

  • 分支语句

if else、switch case

  • 循环语句

for、while、do while、for in

  • break和continue的作用是什么?
    +break:
    • 终止循环

+continue:
- 跳出当前循环,继续下一次

函数

  • 创建方式
  • 构造函数
  • 字面量
    • 表达式
    • 声明式
  • 什么是形参和实参?
  • 形参是定义函数时,在括号里面书写的占位符,它的作用是为了接收将来函数调用时传递过来的实参
  • 实参是函数调用时,实际传递给形参的值;如果传递基本数据类型,那么实参是具体的值;如果传递引用数据类型,那么实参是引用的地址。
  • 函数调用时候传参,就是一个赋值过程。
  • 返回值

    • 可以使用return关键字添加返回值
    • 如果没有return默认返回undefined
  • arguments

    • 这是一个函数运行时内部提供的对象,这个对象的使用方式和数组类似,所以称之为伪数组。
      它可以通过下标访问函数调用时传递进行的实参,通过length属性得到实参的个数。

错误抛出

错误捕获

debugger与断点

+号

  • 如果两边含有字符串或者对象,那么转换为string之后再相加
  • 除此之外,两数相加,转换为number之后再相加

-号

  • 把两边数据转换为number之后再相减

类型相等比较

约定:非空数据类型表示null和undefined两种数据类型。

  • 任何数据和NaN相比结果都为false
  • null等于undefined
  • null和非空类型相比结果为false
  • undefined和非空类型相比结果为false
  • 数字和非空类型比较,先转换为数字再比较
  • 布尔和非空类型比较,先转换为数字再比较
  • 对象与对象比较内存地址
  • 对象与字符串,对象先转换为字符串再比较
类型 类型 规律
NaN 任意类型 false
null undefined true
null 非空类型 false
undefined 非空类型 false
数字 非空类型 转换为数字再比较
布尔 非空类型 转换为数字再比较
对象 对象 内存地址比较
对象 字符串 转换为字符串再比较

数据做布尔类型转换

  • 0、NaN、''、""、null、undefined转换结果为false
  • 其余转换结果都为true

你可能感兴趣的:(1.JavaScript 基础回顾)