JavaScript:修改对象变量的原型?

2024-01-09

这是一个对象:

var obj = new function(){
    this.prop = {};
}

我尝试做类似的事情:
obj.prop.prototype["new_attr"] = "some_value";

我想做的是永久修改obj.prop包含新属性。据我了解,所有“对象”都有原型,但 JavaScript 告诉我prop没有原型。

也许我采取了错误的方法(试图永久修改prop),但我至少想知道为什么上面的代码不起作用。


通常您访问prototype从构造函数中获取对象,但您也可以从对象中获取它,但不使用.prototype.

获取对象原型对象的非官方方法(并非所有浏览器都支持)是使用__proto__财产。 (我相信它在支持它的浏览器中已被弃用)。

官方 ECMAScript 5 获取对象原型对象的方式(也不是所有浏览器都支持)是使用Object.getPrototypeOf().

在你的情况下.prop正在引用对象文字,因此您已经知道原型是Object.prototype.

Object.getPrototypeOf( {} ) === Object.prototype;  // true

请注意,扩展几乎总是一个坏主意Object.prototype.


“也许我采取了错误的方法(试图永久修改 prop),但我至少想知道为什么上面的代码不起作用。”

如果您只是想修改引用的对象.prop,然后只需执行以下操作:

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

JavaScript:修改对象变量的原型? 的相关文章

  • 暂停除了已激活的玩家之外的所有其他玩家。

    我有这个插件 它可以将不同的样式应用于 html5
  • ReferenceError:regeneratorRuntime未定义(但在范围内工作)

    我遇到过这种奇怪的情况 ReferenceError regeneratorRuntime is not defined 我已经设法在一个非常小的设置中重现 与同一问题上的类似问题相比 并且还注意到一些奇怪的行为 具体取决于是否使用范围 以
  • 如何使用 JavaScript 创建链接?

    我有一个标题字符串和一个链接字符串 我不知道如何将两者放在一起以使用 JavaScript 在页面上创建链接 任何帮助表示赞赏 我试图解决这个问题的原因是因为我有一个 RSS 源并且有一个标题和 URL 列表 我想将标题链接到 URL 以使
  • 为什么我的淘汰单选按钮在另一个具有点击绑定的元素内时会失败?

    我有一个单选按钮列表 我想要点击 li 他们还检查单选按钮 这一切都有效 直到我放了一个name单选元素上的属性 然后我的代码停止工作 我的代码如下所示 ul li li ul li
  • Eslint errorring 导入没有扩展名的 jsx

    我正在尝试在 es6 中导入 jsx 文件而不需要 jsx 扩展名 import LoginErrorDialog from LoginErrorDialogView Not import LoginErrorDialog from Log
  • 为什么 iife 在一个简单的例子中不起作用?

    我不明白为什么函数表达式调用不起作用并抛出错误 你能给我解释一下吗 var a function x alert x function a 1 谢谢大家 任务比我想象的要容易得多 这是因为 JS 将 IIFE 解析为函数的参数调用 这样做时
  • 以编程方式填写reactjs表单

    我正在编写一个用户脚本 但无法填写由reactjs制作的表单 我的代码 document querySelector id username value email protected cdn cgi l email protection
  • Chrome 中的性能问题

    我目前正在从事一个相对较大的项目 使用 AngularJs 构建 应用程序的一部分是一个表单 您可以向其中添加任意数量的页面 不幸的是 添加了很多不必要的垃圾 即表示表单模型的对象可能会变得非常大 在某些时候 Chrome 基本上无法处理它
  • 摩卡 - Chai Karma“套件未定义”

    我对 jscript tdd 很陌生 遇到了问题 希望有人能告诉我我在做什么 在浏览器中运行测试 通过 HTML 文件 一切正常 通过节点和业力运行它们我得到以下异常 我想在 node js 主机的 karma 中使用 Mocha 和 Ch
  • 可以在初始 DOM 解析期间/之前修改 DOM 吗?

    是否可以在初始 DOM 解析期间或之前修改 DOM 或者我是否必须等到 DOM 被解析和构建之后才能与其交互 更具体地说 是否有可能阻止 DOM 中的脚本元素使用用户脚本 内容脚本或 Chrome 或 Firefox 中的类似脚本运行 在解
  • Bootstrap按钮加载+Ajax

    我正在使用 Twitter Bootstrap 的按钮加载状态 http twitter github com bootstrap javascript html buttons http twitter github com bootst
  • 如何将函数附加到弹出窗口关闭事件(Twitter Bootstrap)

    我做了一些搜索 但我只能认为我可以将事件附加到导致其关闭的按钮 https stackoverflow com questions 13205103 attach event handler to button in twitter boo
  • 设置 cookie 时中断 JavaScript 执行

    当设置 cookie 时 是否可以始终中断浏览器开发人员工具中的 javascript 执行 无需显式设置 JS 断点 document cookie 在 html head 块的开头添加此代码片段效果很好
  • 使用 CSS 或 Javascript 填充动画

    我只是想知道是否可以使用 CSS 或 javascript 创建填充动画 基本上我想创建一个填充动画 如下图所示 http i40 tinypic com eit6ia png http i40 tinypic com eit6ia png
  • DataTables row.add 到特定索引

    我正在替换这样的行项目 var targetRow entity row dataTable targetRow closest table dataTable DataTable dataTable row targetRow remov
  • 可以设置标题样式吗? (并且使用CSS或js?)[重复]

    这个问题在这里已经有答案了 我想知道是否可以设计一个title a href title This is a title Hello a 样式问题有两个方面 文本格式 编码 我猜这是可能的 所以在问题中这样做 工具提示样式 你能把它弄大一点
  • Firebase 函数 onWrite 未被调用

    我正在尝试使用 Firebase 函数实现一个触发器 该触发器会复制数据库中的一些数据 我想观看所有添加的内容votes user vote 结构为 我尝试的代码是 const functions require firebase func
  • 日期出现奇怪的错误,“未捕获非法访问”

    所以我试图找到最新的DateJavascript 可以处理 我把它减少到 9 月 275760 并增加了我开始捕获未捕获的天数illegal access例外new Date 09 24 275760 to new Date 10 13 2
  • Javascript - 水波纹效果

    我需要 JS 上的脚本 它将以 水波纹 样式更改 images html 抱歉 6MB GIF 文件 http fcuunited ru temp listening2 gif http fcunited ru temp listening
  • 如何确定所有角度2分量都已渲染?

    当所有 Angular2 组件完成渲染时 是否会触发一个角度事件 For jQuery 我们可以用 function 然而 对于 Angular2 当domready事件被触发 html 只包含角度组件标签 每个组件完成渲染后 domrea

随机推荐

  • Bootstrap 选择元素未使用 React-router 渲染

    我正在用reactjs制作一个基本的应用程序 我已经为 3 个组件设置了路线 问题是渲染组件时不会出现选择字段 我正在使用 bootstrap select 库来选择字段 className 为 selectpicker 的选择字段不会呈现
  • Vuetify数据表,如何应用外部过滤器?

    如果可能的话 如何将过滤器应用于 Vuetifyv data table 与 常规 结合使用search财产 按照 Vuetify 示例 https vuetifyjs com en components data tables https
  • 将textarea中的文本按换行符(包括空行)拆分为javascript数组

    我正在尝试按新行分割分割文本区域数据中的文本 我当前的代码可以工作 除了一个小要求 结果数组必须包含空行以及
  • iPhone HTML5 功能支持

    有谁有各种浏览器 平台支持的 HTML5 功能的明确列表的链接吗 我特别需要知道 iPhone 支持哪些 HTML5 功能 我自己没有 iPhonehttp html5test com http html5test com对我来说没有多大用
  • 无法通过 Slack API 删除聊天消息

    我有一个带有公共频道的 Slack 团队 我的目标是仅将该频道用于 bot A 发布的公告 我知道不可能将 Slack 通道配置为仅对一个人可写而对其余人只读 我创建了一个 bot B 在外部计算机上运行的 Python 东西 它通过 RT
  • 选择单选按钮时显示的文本框

    我想在选择单选按钮 yes 时显示一个文本框 这就是我的代码的样子 Care of Address br Yes
  • (1)“AUTO_INCRMENT”附近:更改表时出现语法错误

    我正在尝试更改定义如下的 SQLite 表 String CREATE TABLE CREATE TABLE IF NOT EXISTS tab NAME row ID INTEGER PRIMARY KEY row NAME TEXT r
  • UIModalTransitionStyle 水平移动

    UIModalTransitionStyle 可以是 Vertical Flip 或 Dissolve 我希望它从右到左或从左到右 就像您单击 MapKit 标注或基于导航的应用程序中的公开按钮一样 作为模态 viewController
  • Jquery 条件检查 is(':hover') 不起作用

    xx mouseenter function if this is hover alert d else alert f 这是我的代码 它应该提醒 d 但每次它都会提醒 f 这里有什么错误 function idIsHovered id r
  • 启动默认电子邮件客户端以打开带有预选文件附件的“发送电子邮件”窗口

    我需要向我们的应用程序添加 创建并发送电子邮件 功能 我们的程序创建一个输出文件 然后我必须启动默认电子邮件客户端以打开 写电子邮件 窗口 并将输出文件预先选择为附件 我见过其他程序这样做 即使默认客户端是 Thunderbird 而不是
  • 多维数据的统计回归[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有一组数据 x y z 格式在哪里z是某个公式的输出 涉及x and y 我想找出公式是什么 我的互
  • 如何生成随机 num::BigUint?

    我需要一个随机的 256 位无符号数 我发现有RandBigInt https docs rs num bigint 0 2 0 num bigint trait RandBigInt html特征与方法gen biguint 但我很难找到
  • 可以通过发送 NULL 字节来绕过 recaptcha 吗?

    我们正在运行 Atomic Secured Linux 并且它一直在捕获在 recaptcha response field 中发送 NULL 字节的帖子 有问题的帖子肯定是垃圾邮件 但唯一获得空字节的字段是 recaptcha respo
  • jQuery 检查元素是否包含任何属性

    我可以通过以下方式检查元素是否具有特定属性 if A attr myattr undefined attribute exists else attribute does not exist 如何检查元素是否具有任何属性 谢谢 如果您想查看
  • Highchart - 仅更改一个 x 轴标签的颜色

    所以我知道如何更改 Highchart 中 x 轴标签的颜色 如下所述 http jsfiddle net gh get jquery 1 7 1 highslide software highcharts com tree master
  • 仅当持久化时 ID 为空时如何生成 ID

    我有两个不同的组件 它们使用两个不同的数据库 但实体位于两个数据库上 并且我希望它始终具有相同的 ID 所以基本上当 ID 为空时我希望它自动生成 如果它不为空则使用 ID 我正在使用休眠 Id Column name COLUMN ID
  • Android 自定义画笔图案/图像

    我有一个 8x8 的图像 位图 可以更改 我想做的是能够绘制一个形状 给定Path and Paint对象到我的SurfaceView 目前我所能做的就是用纯色填充形状 我怎样才能用图案来绘制它 在图像中您可以看到画笔图案 十字 它可以是任
  • 我的布局在低 dpi 设备上无法正确缩放

    我制作了一个带有约束布局的 Android 应用程序 即使我使用 SP 和 DP 作为单位 布局也无法正确缩放 我仔细检查了所有值 它们都有 dp 和 sp 我在以下模拟器 5 1 pixel pixel 10 平板电脑 pixel 2 p
  • IndexError:迭代两个 webelement 列表时列表索引超出范围

    我试图在终端上打印结果 但收到此错误消息 IndexError list index out of range 以下是代码 提前感谢您的帮助 这个领域真正的初学者 import pandas as pd from selenium impo
  • JavaScript:修改对象变量的原型?

    这是一个对象 var obj new function this prop 我尝试做类似的事情 obj prop prototype new attr some value 我想做的是永久修改obj prop包含新属性 据我了解 所有 对象