JavaScript 中通过自定义 valueOf 修改原始对象行为

作者:青柠

时间:2026-10-29

浏览:163

JavaScript 对象默认包含 valueOf 方法,用于返回对象的原始值。本文演示如何通过重新定义该函数来改变对象的隐式类型转换行为,使对象在比较或打印时返回自定义字符串,同时保持严格相等判断的原始逻辑。

文章目录

JavaScript 重写 valueOf 方法

本文展示了一种在 JavaScript 中修改原始对象 valueOf 方法的技巧,供开发者参考。

JavaScript 中的对象均内置了 valueOf 方法。开发者可以通过自定义该函数,覆盖并替换掉原始 object 的默认 valueOf 实现。


function foo() {
  this.valueOf = function() {
   return 'this is my value';
  }
}
var bar = new foo();
Print( bar ); // prints: this is my value
Print( bar == 'this is my value' ) // prints: true
Print( bar === 'this is my value' ) // prints: false

希望上述关于 JavaScript 程序设计的说明能对读者有所帮助。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章