0%

作用域

[[scope]]:

  • 函数创建时,生成的一个JS内部的隐式属性
  • 函数存储【作用域链】的容器
    • 作用域链:
      • AO - 函数的执行期上下文
      • GO - 全局的执行期上下文
  • 函数执行完成以后,AO会被销毁,再执行会重新创建一个新的AO
  • 全局执行的前一刻 GO -> 函数声明已经定义
阅读全文 »

watch 与 computed 区别

  • watch 侦听器
    • 关注点在数据更新:给数据增加侦听器,当数据更新时,侦听器函数执行
    • 特点:数据更新时,需要完成什么样的逻辑
    • 何时使用:
      • 监听一个数据的变化,变化后要干什么,用watch
  • computed 计算属性
    • 关注点在模板:抽离复用模板中的复杂的逻辑运算
    • 特点:当函数内的依赖更新后,重新调用
    • 何时使用:
      • 专注视图部分的复杂的逻辑运算,用computed
阅读全文 »

预编译

运行过程

  1. 通篇的检查是否有语法错误,有则直接抛错,不执行任何语句
  2. 预编译
  3. 解释一行,执行一行
阅读全文 »

显示/隐式类型转换

显示类型转换

💄Number() 把值转为数字

  • 如果参数无法被转为数字,则返回 NaN
  • ‘’、’ ‘, ‘0’、false、null、[] 、 等返回 0
  • {}、undefined 被转为 NaN
  • 数字打头,但包含其他字符的,也返回 NaN
  • 特点:
    • 相比 parseInt 更宽松,false,true能转
    • 但类似 ‘1a’ 这种,会 NaN
阅读全文 »

页面表现

  • v-if
    • true: 显示DOM
    • false: 用注释节点占位
    • 注释节点与DOM之间的切换
  • v-show
    • true: 不作处理(用户自己设置的 display
    • false: 行内样式设置**display: none**
    • 行内样式:style or style=”display: none”
阅读全文 »