是否有针对所有属性的 Object.watch / __noSuchMethod__ 的垫片可用?

2023-12-01

我想延长localStorage通过每次获取/存储设置时执行一些代码。我可以为所有现有属性定义一个 getter/setterlocalStorage,但问题出在新的设置上。

例如,localStorage['somenewsetting'] = 123创建一个新设置。我想自动为此属性定义一个 getter/setter,以便我的附加代码也针对新设置执行。

基本上我需要Object.watch,但对于所有属性。我发现的是__noSuchMethod__,但它在 Chrome 上不可用。有适用于此方法的垫片吗?或者有其他观看方式all物体的属性?

再次强调,我需要在 Chrome 上实现此功能。


不,至少对于 Chrome 来说不是。__noSuchMethod__无论如何,只适用于函数。

Proxy支持是正在讨论中对于 ECMAScript (Harmony) 的下一个版本,甚至已经在 SpiderMonkey 中实现。恐怕在那之前你就不走运了。

- 有要求实施__noSuchMethod__ in V8但遭到拒绝。实现代理的请求并没有更成功:633 被合并为重复项和 Chromium 团队不太关心实现代理支持.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是否有针对所有属性的 Object.watch / __noSuchMethod__ 的垫片可用? 的相关文章

  • 当内部元素滚动位置到达顶部/底部时防止父元素滚动?

    我有一个小 浮动工具箱 一个带有position fixed overflow auto 效果很好 但是 当在该框内滚动 使用鼠标滚轮 并到达底部或顶部时 父元素 接管 滚动请求 工具框后面的文档滚动 这很烦人 而不是用户 要求的 我正在使
  • 获取被调用的 javascript 文件的查询字符串

    是否可以在调用的 javascript 文件上使用 javascript 获取查询参数 如下所示 in html in file js console log this location query 这是否可能以某种方式实现 或者我必须使用
  • 有没有一种方法可以在没有输入的情况下发送表单值

    假设我有以下表格
  • Javascript 将对象推送为克隆

    我将 d3 用于交互式网络应用程序 我需要绑定的数据在交互过程中发生变化 并且由 JSON 变量中的一些选定对象组成 为此 我在 JSON 变量上使用了映射 并进行了一些查询来选择适当的对象 对象被推送到列表中 并且该列表被绑定为新数据 我
  • 从选择 onChange 调用 javascript 函数 [重复]

    这个问题在这里已经有答案了 所以我有一个简单的 HTML 选择框和一个 javascript 警报功能 我希望选择框有一个 onchange 事件来调用 javascript 警报函数 这是我到目前为止所拥有的 HTML div Type
  • 以下文档我无法创建 Vue.js 3 的实例

    The code https stackblitz com edit vue ttt file src main js https stackblitz com edit vue ttt file src main js 问题 我正在尝试在
  • 检测 Webkit/Chrome 中 HTML5 数字控件更改的事件?

    HTML5 为我们提供了一些新的输入元素 例如
  • C# 无法覆盖继承的成员

    我正在从一本名为 Chegwidden Gladdis 的书中学习 C 我正在制作与书中编写的相同的程序和相同的代码 但有一个问题 我无法重写父类中的方法 我从章节一开始就读完了这本书 读了五遍 一切都是一样的 但我不明白为什么我不能重写父
  • Apache Thrift Java-Javascript 通信

    我正在编写一个基于 Apache Thrift 的 Java 服务器 它将从 Javascript 客户端接收数据 我已经完成了 Java 服务器 但问题是我可以获得 Javascript 客户端的工作示例 我无法找到一个好的示例 构建文档
  • 如何将一个数组中的所有项目复制到另一个数组中?

    如何将数组的每个元素 其中元素是对象 复制到另一个数组中 以便它们完全独立 我不想更改一个数组中的元素来影响另一个数组 这里的关键是 数组中的条目是对象 并且 您不希望对一个数组中的对象的修改显示在另一个数组中 这意味着我们不仅需要将对象复
  • 通过 JavaScript 单击按钮/页面提交

    我想了解 asp net 框架如何知道何时单击了按钮 因此一旦收到请求 就会在服务器上触发其单击事件 我需要了解它是如何工作的 因为我想从 JavaScript 触发按钮的服务器单击事件 我能够从 JavaScript 执行页面提交 doc
  • jQuery:将文本区域滚动到给定位置

    我有一个包含很多文本的文本区域
  • AngularJS + jQuery 移动

    是否还有其他可能性来设计AngularJS以移动友好的方式应用程序CSS 我正在计划一个移动应用程序 并希望使用 AngularJS 进行逻辑和数据绑定 但我不想自己设计所有内容CSS The AngularJSFAQ说它使用jQuery
  • Chrome --app 相当于 Firefox\IE

    我有一个网络应用程序 客户要求单击不同按钮时更改浏览器窗口大小 我发现在那link https stackoverflow com questions 13436855 launch google chrome from the comma
  • 播放没有音频标签的音频

    是否可以在没有音频标签的情况下仅使用 javascript 播放音频 我通过 tinyMce 编辑器注入脚本 因为我无权访问网站的后端 并且它不支持客户端的音频标签 她只想要当您将鼠标悬停在图像上时发出简单的声音 我已经完成了所有设置 但是
  • ES6 模块范围

    我有代码 lib js var a a export var b b main js console log a a variable is not available in a global scope import b from lib
  • 如何将MathJax公式转换为img

    Mathjax 现在在我的项目中运行良好 但有一个问题 有没有办法将MathJax的公式 纯html和css 转换成img文件 我可以保存 MathJax 可以配置为生成 SVG 看http docs mathjax org en late
  • 如何跨多个文件跨越 javascript 命名空间?

    我永远忽略了javascript 几年前我开始使用 jQuery 这样我就可以过得去 但随着我开始更多地进行 TDD 我昨天决定真正深入研究 javascript 之后可能还有咖啡脚本 在我的 ASP NET Web 窗体应用程序中 我有很
  • jQuery Mobile + Admob:轮换?

    我使用 jQuery Mobile 框架创建了一个移动应用程序 所有页面都在index php中加载 使用 div 在每个页面的页脚中 我添加了Admob代码 div div div
  • 如果 POST 响应仅包含 ID,如何将数据保存到我的 Ember 存储?

    Ember 数据期望我的服务器在每次成功后返回完整的对象POST 但是 我的 API 只返回一种元对象 其中包含id 当 Ember 收到此对象时 记录中的现有数据将被删除 除了id 例如 当我这样做时 var asset App Asse

随机推荐

  • 获取二进制文件 C 的哈希值

    我想获取我所知道的名称的二进制文件的哈希值 我尝试过以下方法 但后来意识到SHA1 返回字符串 文件名 的哈希值 但我想在文件本身上运行它 任何关于如何做到这一点的指示都会很棒 char fileName bin ls unsigned c
  • scalaz 中的类型类和继承

    这是我第二次尝试定义问题 我无法理解它 我希望能够定义一个代数类型并在其上定义一个简单的类型类 比方说Show 在哈斯克尔我做 data Tree a EmptyTree Node a deriving Show 现在 如果我输入Empty
  • 使用 Linq 从 IEnumerable 中提取数据并将其存储在数据表中

    我有一个如下所示的数据表 public static DataTable SetColumnHeaders DataTable KeyDataTable KeyDataTable Columns Add First Name typeof
  • 在内联 html img 标签中显示带有图像标签的 SVG

    为了将 SVG 转换为 PNG 我将 svg insideHTML 内容放入 img 标签中 如下所示 img src gt SVG 图片无法正确显示 尤其是 SVG 标签内的图片 如下所示 其他 svg 标签正确显示
  • 尝试为文件 附加自动命名数据库失败。存在同名数据库

    我的项目的 App Data 文件夹中有 ASPNETDB MDF 数据库 当我尝试添加用户时出现错误 MembershipUser user Membership CreateUser viewModel Username viewMod
  • MVC2 RTM - 使用实体框架模型绑定复杂对象

    我是 MVC 新手 并且真的很挣扎于我认为这应该是一个非常常见的场景 我正在使用 MVC2 RTM 和模型对象的实体框架 我正在做的工作 包含子对象集合的父对象的编辑视图 该表单显示父对象的所有可编辑字段 并迭代并显示所有关联子对象的所有可
  • Wordpress - 无需插件即可按视图获取 5 个热门帖子

    Hi 我有自定义字段 其中包含帖子中的图像 并且我想显示按视图排序的前 5 个帖子 我正在使用 WordPress 您能帮我吗 对不起 我的英语不好 Thanks 有一个错误Xhynk的参考 它运行的查询按字母顺序返回帖子 1 2 20 2
  • Postgres - 使用 postgis 计算距离

    经过几天的寻找 并尝试了我找到的所有内容后 我来这里询问如何使用 PostGis 计算 Postgres 上两点之间的距离 我有一张名为 位置 的表 该表有一个点类型的 坐标 列 当用户在应用程序上插入值时 我需要获取按近距离排序的位置 我
  • 从对象字典创建 Django 表单

    我觉得这一定很简单 但经过几天的尝试 我正式一无所知 我有一个字典 其中键是对象 值是对象列表 以下是我想如何使用该信息来构建表单 for object in dictionary name of field object slug nam
  • 如何从 iPad 键盘上删除或禁用特定文本字段的语言首选项键

    1 需要从 iPad 键盘上删除或禁用特定文本字段的按键 如图所示 设置在故事板中 或手动 textField setKeyboardType UIKeyboardTypeASCIICapable
  • 使用 PHP 重写 URL

    我有一个如下所示的网址 url com picture php id 51 我该如何将该 URL 转换为 picture php Some text goes here 51 我认为 WordPress 也有同样的作用 如何在 PHP 中创
  • 应用程序无法在 WAMP 上运行,但可以在在线服务器上运行

    我使用在线 SQLite 数据库制作了一个基本的登录应用程序 http demo3534535 16mb com 它在在线服务器上运行良好 现在我想在 Gennymotion 模拟器中使用 WAMP 在本地服务器上运行 我必须对代码进行哪些
  • 带有 where 子句的 SQL select 语句

    如果没有硬编码值 我将如何编写这个 sql 语句 resultSet statement executeQuery select from myDatabase myTable where name john this works 而是有类
  • 为什么改变块和网格大小会对运行时间产生如此大的影响?

    我正在研究一些cudatutorial将 RGBA 图片转换为灰度图 但我不明白为什么要改变blockSize and gridSize改进了 X33 时间 global void rgba to greyscale const uchar
  • 用 C# 创建 VPN 客户端 [关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我一直在研究不同的 VPN 它们似乎没有很好的加密 如默认的 Windows XP VPN 服务器 我想看看是否可以使用 C 创建自己的 但我不知道如何创建一个客户端来拦截所有数
  • 如何以不同的顺序对嵌套列表中的 data.frame 对象集进行分组?

    我在嵌套列表中有一组 data frame 对象 我想按 data frame 对象的名称对它们进行分组 因为每个嵌套列表 data frame 对象都以不同的顺序放置 所以我很难将它们分组到新列表中 我尝试了 CRAN 中 purr 包的
  • TypeScript:基于布尔选项参数的返回类型缩小

    我正在尝试为我的函数创建一个类型 以便返回类型根据传递给它的值而变化 我考虑过Typescript 返回类型取决于参数接下来 几乎 这封信似乎效果很好 然而 在我的项目中 我必须使用箭头函数 另外 如果可能的话 我想避免过载 考虑这个签名和
  • 使用 HttpClient 3.1 设置响应编码

    我在用着org apache commons httpclient HttpClient并需要设置响应编码 由于某种原因 服务器在 Content Type 中返回不正确的编码 我的方法是获取原始字节的响应并转换为String与所需的编码
  • xinetd 服务调用 python 脚本(无法正确执行)

    我读到了这个 您可以使用 xinetd 添加启动 python 脚本的服务 标准输入和输出将通过网络在所需端口上传输 因此您不需要修改脚本 input raw input 和 print 方法可以正常工作 因此 当建立到 192 168 2
  • 是否有针对所有属性的 Object.watch / __noSuchMethod__ 的垫片可用?

    我想延长localStorage通过每次获取 存储设置时执行一些代码 我可以为所有现有属性定义一个 getter setterlocalStorage 但问题出在新的设置上 例如 localStorage somenewsetting 12