Object.defineProperty(obj, prop, descriptor)方法会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性,并返回这个对象。

  const  freezeObj = Object.freeze(obj), Object.freeze()方法可以冻结一个对象,冻结后,不能给对象freezeObj添加新的属性,不能修改其已有属性的值,不能删除已有的属性,以及不能修改对象已有属性的可枚举性、可配置性、可写性。

  descriptor:

    configurable 可配置性,当且仅当该属性为true时,该属性的描述符才能被改变,同时该属性也能被删除,默认为 true。

    enumerable 当且仅当该属性为true时,该属性才能出现在对象的枚举遍历中。 (for  in) ,  object.keys()。object.keys(obj)会返回一个有给定对象的自身可枚举属性的属性名组成的数组,数组中名的排列顺序和使用 for .... in 循环遍历该对象时返回的顺序一致。

    value 值

    writable 当且仅当为true时,才能被赋值运算符改变。

    get 一个给属性提供getter的方法,如果没有则 getter 为undefined,当访问该属性时该方法会被执行,方法执行时没有参数传入,但会传入this对象。

    set 一个给属性提供setter的方法,如果没有则setter为undefined,当该属性修改时会触发该方法,参数为新的value。

    定义 get 和 set 可以对对象属性的操作进行监听。get ,set 不能与 writable ,value同时定义,数据描述符不能与存取描述符冲突,有些对象上的属性是原型链上继承来的属性。

  

  

JavaScript 对象操作的更多相关文章

  1. JavaScript 对象JavaScript 对象

    JavaScript 中的所有事物都是对象:字符串.数值.数组.函数... 此外,JavaScript 允许自定义对象. 所有事物都是对象 JavaScript 提供多个内建对象,比如 String. ...

  2. 深入理解javascript对象系列第二篇——属性操作

    × 目录 [1]查询 [2]设置 [3]删除[4]继承 前面的话 对于对象来说,属性操作是绕不开的话题.类似于“增删改查”的基本操作,属性操作分为属性查询.属性设置.属性删除,还包括属性继承.本文是对 ...

  3. 让操作javascript对象数组像.net lamda表达式一样

    让操作javascript对象数组像.net lamda表达式一样 随着web应用程序的富客户端化.ajax的广泛使用及复杂的前端业务逻辑.对js对象数组.json数组的各种操作越来越多.越来越复杂. ...

  4. ajax操作之操作 JavaScript 对象

    通过请求获取充分格式化的HTML虽然很方便,但这也意味着必须在传输文本内容的同时也 传输很多HTML标签.有时候,我们希望能够尽量少传输一些数据,然后马上处理这些数据.在 这种情况,我们希望取得能够通 ...

  5. Javascript 笔记与总结(2-3)Javascript 运算符、控制结构与对象操作

    [连接运算符 + ] <script> console.log(1+2+'a'+3+4); </script> 输出: 3a34 [逻辑运算符]返回的是最早能判断表达式结果的那 ...

  6. javascript json对象操作(基本增删改查)

    /** * Json对象操作,增删改查 * * @author lellansin * @blog www.lellansin.com * @version 0.1 * * 解决一些常见的问题 * g ...

  7. javaScript对象-基本包装类型的详解

    本人按书上的内容大致地把javaScript对象划分成“引用类型”.“基本包装类型”和“内置对象”三块内容. 我们这篇先了解下基本包装类型的详细用法吧! 一.我们先解下相关概念: 1.引用类型的值(对 ...

  8. 简述JavaScript对象、数组对象与类数组对象

    问题引出 在上图给出的文档中,用JavaScript获取那个a标签,要用什么办法呢?相信第一反应一定是使用document.getElementsByTagName('a')[0]来获取.同样的,在使 ...

  9. javascript DOM 操作 attribute 和 property 的区别

    javascript DOM 操作 attribute 和 property 的区别 在做 URLRedirector 扩展时,注意到在使用 jquery 操作 checkbox 是否勾选时,用 at ...

  10. javascript DOM 操作

    在javascript中,经常会需要操作DOM操作,在此记录一下学习到DOM操作的知识. 一.JavaScript DOM 操作 1.1.DOM概念 DOM :Document Object Mode ...

随机推荐

  1. FLASH-CH32F203替换CH32F103 FLASH快速编程移植说明

    因CH32F203 相对于CH32F103 flash操作的快速编程模式由单次128字节编程变成了单次256字节编程,该文档说明主要目的是为了方便客户在原先CH32F103工程的基础上实现flash ...

  2. LeetCode_806. 写字符串需要的行数

    题目 难度:简单 原文:https://leetcode-cn.com/problems/number-of-lines-to-write-string/ 题目 我们要把给定的字符串 S 从左到右写到 ...

  3. Redis-05持久化

    1 Redis持久化 RDB(Redis DataBase) AOF(Append Only File) 2 RBD 2.1 基本说明 在指定的时间间隔内将内存中的数据集快照写入磁盘文件,它恢复时将快 ...

  4. PostgresSQL 常用操作方法

    1.后台生成XML作为参数然后数据库解析获取数据 var idList = ids.Split(new string[] { "," }, StringSplitOptions.R ...

  5. 关于集合中remove()方法的问题

    首先上一段代码: needDelete()方法:决定是否要删除 public static boolean needDelete(Object obj) { if (obj.equals(" ...

  6. CCRD_TOC_2008年第5期

    中信国健临床通讯 2008年第5期 目 录   RA: 临床缓解与亚临床炎症 1.     DMARD诱导缓解的RA患者中仍有影像学确证的亚临床炎症 Brown AK, et al. Arthriti ...

  7. .NET依赖注入之一个接口多个实现

    前言 最近又在项目中碰到需要将原本单实现的接口改造成多个实现的场景,这里记录一下常见的几种改法. 假设已经存在如下接口ICustomService和其实现CustomService,由于只有一种实现, ...

  8. Atcoder题解:Arc156_c

    数据范围 \(10^5\),但是介绍一个 \(O(n\log n)\) 做法. 我们考虑观察样例,发现样例都很小,而且 \(\text{LCS}\) 的长度都是 \(1\),那么我们就猜答案最多为 \ ...

  9. EL 表达式直接显示在页面上

    如上图,如果你使用 el 表达式直接显示在页面上,那么很有可能是因为你没有给 jsp 页面添加一项配置,重新部署项目,EL 表达式就可以生效了: <%@page contentType=&quo ...

  10. 干货!超实用的 Linux 初始化脚本

    咸鱼今天给大家分享一个无论是学习还是工作中都很实用的 Linux 系统初始化脚本,其实就是各种命令的集合 完整代码在文章最后哦 定义相关变量   配置 yum 镜像源 获取阿里云 yum 镜像源 判断 ...