美文网首页JavaScript
js基础之对象

js基础之对象

作者: Lyan_2ab3 | 来源:发表于2020-06-26 10:23 被阅读0次

修改对象

const obj = {
a:1
}

obj.a = 2
console.log(obj.a)  // 2

// 打印2 ,如果是还想打印出来obj.a 为1 ,就是组织对象被修改

先介绍下:Object.defineProperty(对象, 属性, 描述符)

数据描述符:

  • value : 属性值
  • writable:true 是否可写。默认 false
  • configurable:true 是否可配置。默认false
  • enumerable: true 是否可枚举。默认false

存取描述符

  • set:function () { } 属性访问器 进行写操作时调用该方法
  • get:function () { } 属性访问器 进行读操作时调用该方法
// 正常对象 可写
var obj2 ={
name:'luan'
}
obj2.name = 'lyans'   // 对象可写
console.log(obj2.name)
delete obj2.name  // true  对象可配置 configurable

for (var pp in obj2){
console.log(pp)   // 对象可枚举
}

不可写不可配置不可枚举

Function.prototype = {
name:'lei'
}
console.log(Function.prototype.name) //undefined
// 对象不可写

var a =10;
delete window.a  // false

//configurable    =>    false    该对象不可配置

Object.defineProperty 对数据描述符的设置:

var obj = {}
Object.defineProperty(obj,'name',{
value:'lyan',
writable:false,  // 不可写
configurable:true,
enumerable:true
})

Object.defineProperty 对存取描述符的设置:

var obj = {}
var tempValue = ''
Object.defineProperty(obj,'name',{
//value:'lyan',
//writable:false,  // 不可写
configurable:true,
enumerable:true,
get:function(){
  return tempValue
}
set: function(newValue){
   tempValue = newValue

}
})

(如果在定义时就已经给对象设置了属性,那么此时默认为可写可配置可枚举,在 defineProperty 中如果没有对这三个属性进行修改则默认都为 true

http://www.ferecord.com/lujs-object.html

相关文章

  • js基础之DOM中元素对象的属性方法

    js基础之DOM中元素对象的属性方法

  • Js基础之对象

    JS中一切皆为对象,这是一句常说的话。了解JS对象,从这句话开始吧。JS中的基本数据类型如number,bool,...

  • js基础之对象

    修改对象 先介绍下:Object.defineProperty(对象, 属性, 描述符) 数据描述符: value...

  • JS基础

    JS基础 JS运算 JS代码块 JS对象 原型对象 GC 正则表达式

  • 发现•分享—2019-01-17

    文章 JS JS 异步编程六种方案 JS基础—原型对象的那些事(一) JS基础—原型对象的那些事(二) CSS 综...

  • Android 程序员搞 web 之 js基础(十)

    Android 程序员搞 js 之 基础(九) 一、arguments 对象伪数组 这个伪对象可以替换 函数传入的...

  • js对象及其方法

    1.对象MDN文档2.JS基础--JS对象及其基本用法3.JavaScript 对象所有API解析

  • html基础 持续更新

    html js 基础 js 常见获取dom对象的方法 getElementById() getElementByN...

  • Dom

    JS的组成 ECMAScript js的基础语法 DOM 文档对象模型 BOM ...

  • DOM

    JS的组成 ECMAScript js的基础语法 DOM 文档对象模型 BOM ...

网友评论

    本文标题:js基础之对象

    本文链接:https://www.haomeiwen.com/subject/zsytohtx.html