gpt4 book ai didi

javascript:如何捕获对象的任何缺失的功能/属性

转载 作者:行者123 更新时间:2023-11-29 19:48:17 24 4
gpt4 key购买 nike

Preferences = {
XDPI:90,
YDPI:90,
*:function(missing_name) {"Tell Joe he forgot to implement " + missing_name+ " property or func"}
}

假设我有一个旧的/未记录的/缩小的/丑化的类,我想用我自己的实现替换。我怎样才能捕捉到我的新“对象”中可能丢失的所有旧属性?

(假设非技术用户使用了很多客户端脚本(宏)。我想缓解缺少功能的报告)

例如,如果脚本调用 Preferences.CurrentPrinter 我希望 Preferences 对象诊断它缺少 CurrentPrinter 属性,而无需用户查看控制台

最佳答案

ECMAScript 规范的第六版为此引入了 Proxy 对象:

http://www.ecma-international.org/ecma-262/6.0/#sec-proxy-objects

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy

但这还没有得到广泛支持。在撰写本文时,只有 Edge 和 Firefox 浏览器这样做:

http://caniuse.com/#feat=proxy

附言幸运的是,如果您将来阅读它并且所有浏览器都已经支持它:)

关于javascript:如何捕获对象的任何缺失的功能/属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18730635/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com