谈谈对var vm = new Vue({})的理解

Vue.js 本质就是包含各种逻辑的function,初始化Vue的过程就是实例化的过程。

var vm = new Vue({})

console.log(Vue) 之后控制台输出的是  ƒ hn(e){this._init(e)},可以看出,vue对象的本质就是一个function

 

Vm是我创建的一个实例,我对它进行了测试

console.log(typeof Vue)

console.log(typeof new Vue())

在控制台得到的结果分别为:function object,结果显示,使用new来创建的Vue实例就是个对象,所以一切对Object的操作行为都是针对Vue实例对象的。

我看了一下源码,发现出现了很多的object,都不太理解,查阅了网上的教程,总结了几点跟object有关的内容:

Object.create使用指定的原型对象及其属性去创建一个新的对象。

object.defineProperty直接在一个对象上定义一个新属性,或者修改一个对象的现有属性, 并返回这个对象。(445行)

 object.keys返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for…in 循环遍历该对象时返回的顺序一致 (两者的主要区别是 一个 for-in 循环还会枚举其原型链上的属性)。

object.prototype Object的原型对象。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值