博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Object.defineProperty()
阅读量:7157 次
发布时间:2019-06-29

本文共 1000 字,大约阅读时间需要 3 分钟。

vue.js的双向数据绑定就是通过Object.defineProperty方法实现的,俗称属性拦截器。

Object.defineProperty()

方法会直接在一个对象上定义一个新属性,或者修改一个已经存在的属性, 并返回这个对象。

语法

/* * @param: obj:需要定义属性的对象;  * @param: prop:需要定义或修改的属性; * @param: descriptor:将被定义或修改属性的描述符*/Object.defineProperty(obj,prop,descriptor)复制代码

let obj1 = {}		    Object.defineProperty(obj1,"name",{		      value: "你我贷"		    })		    console.log(obj1);		    //{name: "你我贷"}复制代码

let obj1 = {}		    Object.defineProperty(obj1,"name", {			    set: function(value) {			        console.log('赋值操作, 赋值' + value);			    },			    get: function() {			        console.log('取值操作');			        return "你我贷";			    }		    })		    obj1.name = "嘉银"		    console.log(obj1.name);复制代码

数据与视图的联动

复制代码

let obj1 = {}		    Object.defineProperty(obj1,"name", {			    set: function(value) {			    	document.getElementById('test').innerHTML = value			    },			    get: function() {			        console.log('取值操作');			        return document.getElementById('test').innerHTML;			    }			})			obj1.name = "嘉银"复制代码

转载地址:http://rqegl.baihongyu.com/

你可能感兴趣的文章
Ubuntu16.04 配置 国内更新源
查看>>
Pomelo开发中Web客户端开发API简介
查看>>
[20180918]文件格式与sql_id.txt
查看>>
js最简单焦点图片轮播代码
查看>>
全面解析Linux数字文件权限
查看>>
dedecms织梦系统后台验证码图片不显示的解决方法
查看>>
Centos7 安装redis及其入门使用
查看>>
小问题汇总
查看>>
JS(去掉前后空格或去掉所有空格)的用法
查看>>
Moses更改权重的命令变化 -d -t -
查看>>
python-06
查看>>
前端:圆图头像制作--border-radius : 100%
查看>>
PHP(四)表单的基本处理
查看>>
Poj3984--迷宫问题(BFS)
查看>>
杭电2053
查看>>
中断过程
查看>>
我的理解OpenAPI原理
查看>>
js自定义方法名字download报错
查看>>
数据结构 动态数组实现
查看>>
IIS6自带FTP的安装及配置方法
查看>>