Object.defineProperty()更改对象中的函数
这个方法可以修改javascript中的对象的属性值,但是例子只讲了如何修改对象中的属性值,却没有讲如何修改对象里面的方法,所以这里补充下:
例子代码如下:
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript defineProperty()</h1>
<p id="demo"></p>
<script>
// 创建对象:
var person = {
firstName: "Bill",10 lastName : "Gates",
language : "NO",
myFunction : function() {return "锋哥真帅!";}
};
// 更改属性:
Object.defineProperty(person, "myFunction", { value:function(){return "锋哥是大帅哥!"}
});
document.getElementById("demo").innerHTML = person.myFunction();
</script>
</body>
</html>
经过修改,对象方法的输出内容就变成了修改后的"锋哥是大帅哥!"了
至于Object.defineProperty()的详细用法,可以参考链接:https://www.cnblogs.com/yangguoe/p/8055888.html
对了以上代码可以直接粘贴在w3School运行看结果即可:https://www.w3school.com.cn/tiy/t.asp?f=js_object_defineproperty_2
Object.defineProperty()更改对象中的函数的更多相关文章
- JS属性描述符之Object.defineProperty()定义对象属性特性
		
一.Object.defineProperty的作用 用来给对象新增属性,和修改对象中的属性. 二.JS对象中的描述符 js对象中两种属性描述符:数据描述符和存取描述符(访问描述符). 注意事项: 1 ...
 - 由剑指offer引发的思考——对象中虚函数指针的大小
		
先看一个简单的问题: 一.定义一个空的类型,对于其对象我们sizeof其大小,是1字节.因为我们定义一个类型,编译器必须为其分配空间,具体分配多少是编译器决定,vs是1字节,分配在栈区. 那,这一个字 ...
 - js 更改对象中的属性名
		
const json = JSON.parse(JSON.stringify(options).replace(/name/g,"label")); 注: 1.options是需要 ...
 - 二十二、JavaScript之在对象中写函数
		
一.代码如下 二.效果如下 <!DOCTYPE html> <html> <meta http-equiv="Content-Type" conten ...
 - vue2.x版本中Object.defineProperty对象属性监听和关联
		
前言 在vue2.x版本官方文档中 深入响应式原理 https://cn.vuejs.org/v2/guide/reactivity.html一文的解释当中,Object.defineProperty ...
 - Object.defineProperty() 方法会直接在一个对象上定义一个新属性,或者修改一个已经存在的属性, 并返回这个对象。
		
Object.defineProperty() 方法会直接在一个对象上定义一个新属性,或者修改一个已经存在的属性, 并返回这个对象. 语法EDIT Object.defineProperty(obj, ...
 - Js中的Object.defineProperty
		
通过Object.defineProperty为对象设置属性,并同时规定属性的属性(可见性,可配置性,可枚举性等) 备注:如果通过var obj = {} obj.age = 18这种方式设置的属性, ...
 - 第2节 Scala中面向对象编程:1、类的定义;2、类的构造器;3、object和伴生对象;4、apply和main方法
		
6. 类.对象.继承.特质 Scala的类与Java.C++的类比起来更简洁,学完之后你会更爱Scala!!! 6.1. 类 6.1.1. 类的定义 package cn.itcast ...
 - 理解Object.defineProperty的作用
		
对象是由多个名/值对组成的无序的集合.对象中每个属性对应任意类型的值.定义对象可以使用构造函数或字面量的形式: var obj = new Object; //obj = {} obj.name = ...
 
随机推荐
- LayUI laydate日期选择器自定义 快捷选中今天、昨天 、本周、本月等等
			
1. 引入laydata插件 下载 https://blog-static.cnblogs.com/files/zhangning187/laydate.js laydate.js 替换laydate ...
 - Rocket - debug - TLDebugModuleInner - Hart Bus Access
			
https://mp.weixin.qq.com/s/deNMEyJ1idJDVoZwwo0A1A 简单介绍TLDebugModuleInner中核心总线访问(Hart Bus Access). 参考 ...
 - Rocket - diplomacy - enumerateMask
			
https://mp.weixin.qq.com/s/s3hr5JJX2_pwNgdu8WqV0Q 介绍enumerateMask的实现.(仅供理解,非严谨证明)  1. 基本定义 ...
 - js循环语句while,do..while,for
			
1. while循环 while(循环条件){ 循环体语句块; } 2.do..while循环 do{ 循环体语句块; }while(循环条件) 两者区别:while先判断后执行.循环体语句可能一次都 ...
 - Java实现 LeetCode 229 求众数 II(二)
			
229. 求众数 II 给定一个大小为 n 的数组,找出其中所有出现超过 ⌊ n/3 ⌋ 次的元素. 说明: 要求算法的时间复杂度为 O(n),空间复杂度为 O(1). 示例 1: 输入: [3,2, ...
 - Java实现 LeetCode 171 Excel表列序号
			
171. Excel表列序号 给定一个Excel表格中的列名称,返回其相应的列序号. 例如, A -> 1 B -> 2 C -> 3 ... Z -> 26 AA -> ...
 - Android中StateListDrawable的种类(状态的种类)
			
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="ht ...
 - webpack从单页面到多页面
			
前言 从上次更完webpack从什么都不懂到入门之后,好久没有更新过文章了,可能是因为自己懒了吧.今天看了下自己的索引量少了一半o(╥﹏╥)o,发现事态严重,赶紧更新一篇23333 也是因为最近踩了一 ...
 - ES6优雅的异步操作Promise()
			
一.Promise()的基本使用 <!DOCTYPE html> <html lang="en"> <head> <meta charse ...
 - PL/SQL编程急速上手
			
结构化查询语言(SQL)是第四代编程语言的典型,这种命令式的语言更像一种指令,使用它,你只需要告诉计算机“做什么”,而不用告诉计算机“怎么做”.第四代编程语言普遍具有简单.易学.能更快的投入生产等优点 ...