Object.defineProperty 相关学习
- 描述:
- 方法直接在对象上定义一个新属性,或修改对象上的现有属性
- 并返回该对象。该方法允许精确地添加或修改对象上的属性;
- 语法:
- Object.defineProperty(obj, prop, descriptor)
- obj
必需。目标对象 - prop
定义或者修改的属性名称 - descriptor
对要定义或者修改的属性的描述
- obj
- Object.defineProperty(obj, prop, descriptor)
- descriptor 目标属性所拥有的特性配置项
- configurable:true | false,
- 是否可以删除目标属性或是否可以再次修改属性的特性(writable, configurable, enumerable)。
- 设置为true可以被删除或可以重新设置特性;
- 设置为false,不能被可以被删除或不可以重新设置特性。
- 默认为false。
- enumerable:true | false,
- 此属性是否可以被枚举(使用for...in或Object.keys())。
- 设置为true可以被枚举;
- 设置为false,不能被枚举。
- 默认为false。
- value:任意类型的值,
- 属性对应的值,可以使任意类型的值,
- 默认为undefined
- writable:true | false
- 属性的值是否可以被重写。
- 设置为true可以被重写;
- 设置为false,不能被重写。
- 默认为false。
- 存储器描述
- 注意:
- 1. 当使用了getter或setter方法,不允许使用writable和value这两个属性
- 2. get或set不是必须成对出现,任写其一就可以。如果不设置方法,则get和set的默认值为undefined
- set :function (value){} | undefined
- 是一种设置属性值的方法
- 当设置值的时候触发的函数,设置的新值通过参数value拿到
- get :function (){} | undefined
- 当获取值的时候触发的函数
- 通过返回值设置
- 注意:
- configurable:true | false,
<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">
Object.defineProperty 相关学习的更多相关文章
- Object.defineProperty()方法学习笔记
这是js中一个非常重要的方法,ES6中某些方法的实现依赖于它,VUE通过它实现双向绑定 此方法会直接在一个对象上定义一个新属性,或者修改一个已经存在的属性, 并返回这个对象 参数 Object.def ...
- JS apply的巧妙用法以及扩展到Object.defineProperty的使用
Math.max 实现得到数组中最大的一项 var array = [1,2,3,4,5]; var max = Math.max.apply(null, array); console.log(ma ...
- 双向数据绑定实现之Object.defineProperty
vue.js利用的是es5的 defineproperty 特性实现的双向数据绑定,了解一下基本原理. 举例 var person= {}; Object.defineProperty(person, ...
- Vue.js 源码学习笔记 -- 分析前准备2 -- Object.defineProperty
解析神奇的 Object.defineProperty 几行代码看他怎么用 var a= {} Object.defineProperty( a, "b", { value ...
- JS object(对象)的学习汇总
Object(对象)是在所有的编程语言中都十分重要的一个概念,对于事物我们可以把他们看作是一个对象,而每一个事物都有自己的表示的属性和对于某一信息作出的相应的操作.而这些东西就变成了事物的属性和方法. ...
- javascript之Object.defineProperty的奥妙
直切主题 今天遇到一个这样的功能: 写一个函数,该函数传递两个参数,第一个参数为返回对象的总数据量,第二个参数为初始化对象的数据.如: var o = obj (4, {name: 'xu', age ...
- Vue 双向数据绑定原理分析 以及 Object.defineproperty语法
第三方精简版实现 https://github.com/luobotang/simply-vue Object.defineProperty 学习,打开控制台分别输入以下内容调试结果 userInfo ...
- vue 数据绑定实现的核心 Object.defineProperty()
vue深入响应式原理 现在是时候深入一下了!Vue 最独特的特性之一,是其非侵入性的响应式系统.数据模型仅仅是普通的 JavaScript 对象.而当你修改它们时,视图会进行更新.这使得状态管理非常简 ...
- Object.defineProperty() 方法会直接在一个对象上定义一个新属性,或者修改一个已经存在的属性, 并返回这个对象。
Object.defineProperty() 方法会直接在一个对象上定义一个新属性,或者修改一个已经存在的属性, 并返回这个对象. 语法EDIT Object.defineProperty(obj, ...
随机推荐
- Django基础之django分页
一.Django的内置分页器(paginator) view from django.shortcuts import render,HttpResponse # Create your views ...
- Python基础 — 八种数据类型
Python 3.x 的八种数据类型 八种数据类型分别是: number(数字).string(字符串).Boolean(布尔值).None(空值) list(列表).tuple(元组).dict(字 ...
- SQLSERVER远程链接Oracle数据库
原文地址: http://blog.sina.com.cn/s/blog_45eaa01a0102ywuk.html 使用SQL链接服务器远程访问Oracle数据库 在本机上通过SQL数据库的链接 ...
- 音视频入门-13-使用开源库生成PNG图片
* 音视频入门文章目录 * RGB-to-PNG 回顾 上一篇 [手动生成一张PNG图片] 根据 [PNG文件格式详解] 一步一步地手动实现了将 RGB 数据生成了一张 PNG 图片. 有许多开源的 ...
- C#,WinForm文本框录入内容判断
|| e.KeyChar > ) && (e.KeyChar != ) && (e.KeyChar != ) && (e.KeyChar != ) ...
- 数据结构与算法(周测3-Huffman树)
判断题 1.Given a Huffman tree for N (≥2) characters, all with different weights. The weight of any non- ...
- Kafka架构和原理深度剖析
Kafka简介 Kafka是一种分布式的,基于发布/订阅的消息系统.主要设计目标如下: 以时间复杂度为O(1)的方式提供消息持久化能力,并保证即使对TB级以上数据也能保证常数时间的访问性能 高吞吐率. ...
- 删除静态页面的html
function dellist(obj) { $(obj).parent().parent().remove(); }
- 【日语】日语能力考试N2级核心词汇必备—接续词
日语能力考试N2级核心词汇必备—接续词 顺接 だから 因为......所以......(下文可用命令,意志劝诱等)その結果 其结果(口语,书面语都行,但是比较生硬)したがって 从而,因而(书面语, ...
- 小数据玩转Pyspark(2)
一.客户画像 客户画像应用:精准营销(精准预测.个性化推荐.联合营销):风险管控(高风险用户识别.异常用户识别.高可疑交易识别):运营优化(快速决策.产品组合优化.舆情分析.服务升级):业务创新(批量 ...