分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

js Object.defineProperty 使用

发布时间:2023-09-06 01:55责任编辑:顾先生关键词:js

语法

Object.defineProperty(obj, prop, descriptor)

参数说明:

obj:必需。目标对象 
prop:必需。需定义或修改的属性的名字
descriptor:必需。目标属性所拥有的特性

返回值:

传入函数的对象。即第一个参数obj。

针对属性,我们可以给这个属性设置一些特性,比如是否只读不可以写;是否可以被for..inObject.keys()遍历。

示例:

<!DOCTYPE html><html lang="zh"> ???<head> ???????<meta charset="UTF-8" /> ???????<meta name="viewport" content="width=device-width, initial-scale=1.0" /> ???????<meta http-equiv="X-UA-Compatible" content="ie=edge" /> ???????<title>Object.defineProperty 示例</title> ???</head> ???<body> ???????<ul> ???????????<li id="first">1</li> ???????????<li>2</li> ???????????<li>3</li> ???????</ul> ???????<script type="text/javascript"> ???????????var ss = { ???????????????age: 10 ???????????}; ???????????var name = ‘mfg‘; ???????????Object.defineProperty(ss, ‘name‘, { ???????????????//设置是否可以枚举 ???????????????enumerable: false, ???????????????//是否可以删除目标属性 或者 再次修改属性 ???????????????configurable: false, ???????????????//获取属性值 ???????????????get() { ???????????????????return name; ???????????????}, ???????????????//设置属性值 ???????????????set(val) { ???????????????????name = val; ???????????????} ???????????}) ???????????console.log(ss.name) ???????????ss.name = ‘new value‘; ???????????console.log(ss.name); ???????</script> ???</body></html>

参考:https://segmentfault.com/a/1190000007434923

js Object.defineProperty 使用

原文地址:https://www.cnblogs.com/mengfangui/p/9081419.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved