Document
const vm = new Vue({
// Vue源码中关键性代码
// var data = vm.$options.data;
// 此处是获取data,程序执行到此处仍然没有给vm加上_data属性
// data = vm.data = isFunction(data) ? getData(data,vm) : data
// 程序执行完这个代码后,VM上多了一个_data的属性
// 通过以上源码可知,data不一定是一个{}json对象,也可以是一个函数
// 此处的代码含义是,如果data是函数,则调用getData(data,vm)来获取data
// 如果不是函数,则直接将data返回,给data变量赋值给vm._data属性
// 程序执行到这里为什么要给VM拓展一个_data属性
// 重点函数
// function isReserved(str)
// {
// var c = (str + '').charCodeAt(0);
// return c === 0x24 || c === 0x5f;
// }
// 这个函数就是用来判断字符串是否以_或$开始
// true表示是,false表示否
// 重点函数
// function proxy(target, sourceKey, key) {
// sharedPropertyDefinition.get = function proxyGetter() {
// return this[sourceKey][key];
// };
// sharedPropertyDefinition.set = function proxySetter(val) {
// this[sourceKey][key] = val;
// };
// Object.defineProperty(target, key, sharedPropertyDefinition);
// }
el : "#app",
data : {
msg : "Hello",
name : "Jack",
age : 30
}
服务器托管网 });
class Vue
{
//定义构造函数
constructor(Options)//一个简单的纯粹的JS对象
{
//options对象类有一个data配置项
Object.keys(Options.data).forEach((propertyName,index) => {
console.log(propertyName,index);
let firstCode = propertyName.charAt(0);
if(firstCode != "$" && firstCode != "_")
{
Object.defineProperty(this,propertyName,{
get()
{
return Options.data[propertyName];
},
set(val)
{
Options.data[propertyName] = val;
}
});
}
});
}
}
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
在当今高度依赖互联网的时代,快速稳定的网络连接对于人们的生活和工作至关重要。然而,有时我们可能会遇到网络速度缓慢的问题。虽然更改IP地址并不能直接影响网络速度,但它可以成为改善网络连接的一种策略之一。虎观代理小二二将探讨如何通过更改IP地址来尝试提升网络速度,…