问题标签 [object-properties]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
4481 浏览

php - 指向数组或嵌套对象的变量

是否可以创建指向数组或嵌套对象的变量变量?php 文档特别说你不能指向 SuperGlobals 但它不清楚(至少对我来说)这是否适用于一般的数组。

这是我对数组 var var 的尝试。

这是一些简单的代码来说明我所说的 object var var 的意思。

我在这里遗漏了一些明显的东西吗?

0 投票
4 回答
4581 浏览

php - 将对象传递给 PHP 构造函数错误

是否可以将对象传递给 PHP 类的构造函数,并将该对象设置为全局变量,以便类中的其余函数使用?

例如:

当我尝试执行此操作时,我收到“调用非对象的成员函数”错误。有没有办法做到这一点?否则,我必须将对象直接传递给每个单独的函数。

谢谢!

0 投票
4 回答
549 浏览

javascript - 带有 continue 的 if 是否是一种很好的模式,可以防止在 Javascript 中迭代属性时过度嵌套?

我通常使用这种模式来迭代对象属性:

我不喜欢这种过度的缩进,最近有人向我指出,我可以通过这样做来摆脱它:

我喜欢这个,因为它不会引入额外的缩进级别。这种模式好吗,还是有更好的方法?

0 投票
2 回答
2668 浏览

php - Setting the key of an object property that is an array

Just today I noticed a strange behavior in an object model that was previously working just fine (I have checked everything possible and nothing about its configuration has changed, so I am suspecting a change to PHP version and wondering if anyone else has experience anything similar)

Until recently, I could set the keys of object properties that were arrays manually. The specific implememation of this in one of my models was contained in a gallery class that looked like this:

Irrelevant parts omitted.

Basically, I could set the array keys of the Gallery's Photos object to the individual photo's id in the database. This just made it easier to code for individual iteration and made the whole thing run smoother.

Now, no matter what I set that key to, automatic integers are generated when the foreach runs. I even tried typing a literal string in there, which theoretically should replace every iteration, but I still got incremented, automatic integers for the keys of the property Photos.

Has the abillity to manually set keys within an object property that is an array been removed in some minor release and I am unaware of it? I have googled all over, looked through the PHP manual site and found no answer. Has anyone experienced anything similar? Is there a better approach I should consider? I only really went with this because it made it so much easier to implement a next/previous system via ajax requests back to the next logical id (keeping in mind that ids can be deleted between!)

Thanks!

0 投票
1 回答
224 浏览

javascript - JavaScript:将函数分配给每次调用该属性时都会重新运行的属性

我正在创建一个 html5 JS 表单库。这个想法是将具有 .form-item 类的元素转换为内容可编辑的 div,使用元素的数据属性作为应创建的表单项类型、验证等的说明。

下面的代码为单个表单项创建了一个验证对象,用于检查是否满足字段值的最小长度。对象的属性包括它应用到的 DOM 元素 (el)、字段的最小长度 (minLen)、如果不满足最小长度应显示的错误消息 (msgError) 以及返回的函数 (submit)对象是否验证,如果没有,则显示错误消息。

但是,提交属性函数总是返回 false。我很确定我知道为什么,但我不确定纠正它的最佳方法。我相信我遇到的问题与闭包的概念有关。submit 属性检查表单项元素的 innerHTML 的长度,并将其与 minLen 属性进行比较。但我认为这只发生在验证对象的实例化时刻,innerHTML.length 始终为 0(因为表单项和验证对象必须在用户能够在字段中输入任何内容之前创建) )。我应该如何修改下面的代码,以便提交属性函数在任何时候重新运行(从而检查字段的 innerHTML 的当前长度,而不是实例化时的长度)?

我确实提出了一种解决方案,即将表单项元素的 innerHTML 作为参数传递给提交属性函数,如下所示:

但是,我不喜欢该解决方案,因为必须在 item.submit 代码中重新指定 DOM 元素似乎是多余的(因为对象已经在其 el 属性中包含该 DOM 元素)。

所以我该怎么做?

0 投票
1 回答
45 浏览

object - 我应该把这个对象属性/属性放在哪里

我正在创建一个测试程序。我现在拥有的三个主要对象是测试、问题和答案。我在数据库中有三个表,测试、问题和答案以及从问题到测试的 FK 以及从答案到问题的外键。作为问题表的一部分,我有一个名为 correct_answer_seq_num 的列,它存储作为该问题正确答案的答案的 seq_num (唯一标识符)。我决定把这个属性放在问题表中,因为只有一个答案可以是正确答案(对于这个特定的测试。我知道有些测试不是这样),如果我把它放在答案表中,那么您可以将所有答案标记为正确。

我遇到的问题是我应该把这个属性放在哪个对象中。它并不是问题的真正属性,它更多的是答案的属性,但我仍然认为为了数据完整性,它应该在问题类中。

我是不是太看重这个了,如果不是,我应该把财产放在哪里。

没关系,但我使用的是 C#

谢谢!!

0 投票
2 回答
346 浏览

asp.net - 访问/设置 ASP.NET 用户控件的对象属性的属性值 - 使用声明语法

我觉得我记得以前有一篇文章解释了如何以声明方式设置对象属性的值,作为 ASP.NET 用户控件的属性公开。

我的情况是我有一个用户控件,其中包含一个 LinkBut​​ton,当然,除其他外。我希望用户控件的使用者能够在用于实现用户控件的声明性语法中设置链接按钮的 TEXT 值。

这是用户控件(设计器)...

这是用户控件背后的代码中定义的属性...

当我在页面中包含控件时,我希望能够使用以下声明语法设置我的第四个按钮的文本...

很久以前,我在某处读过一次,您可以使用下划线语法访问对象的属性(公开为用户/服务器控件的属性)。这根本不适合我。这不再被允许还是我错过了什么?有没有办法做到这一点?

谢谢你,加里

0 投票
2 回答
23329 浏览

javascript - 为什么这个对象属性未定义?

考虑下面的代码。第一个console.log正确记录图像,您可以在下图中看到它的属性。但是,当我尝试将其属性记录到控制台时,我得到了undefined

控制台中的结果:

在此处输入图像描述

知道这里发生了什么吗?xml里面的属性也that.data[0]应该有它里面的属性——命名相同,实际上,与cards.

FWIW,我在 Firebug 中得到了同样的东西(上面的控制台图像是 Chrome)。

0 投票
2 回答
133 浏览

php - 我可以创建一个不能在运行时动态添加属性的 PHP 类吗?

以这个类为例:

输出如下:

是否可以停止添加动态属性?是否可以获得类定义属性的列表?(即不是动态的,运行时添加的属性)

0 投票
2 回答
1053 浏览

c++ - C++:对象属性模拟:想法

今天是个好日子!

属性未在 C++ 中实现。我估计我们不能写

isproperty是私有数据成员。公共数据成员违反 OOP 封装规则。

相反,我们必须编写 getter/setter 代码:

这篇文章是关于C++ 中的属性仿真。属性调用看起来像公共数据成员调用,但自定义 UDF 代码用于设置或获取真正的私有数据成员值。

我们想做的是允许简单的接口使用(像公共数据成员,没有函数调用语法),而底层的 getter/setter 可能很复杂(不仅仅是数据分配/读取)

下面的代码(我的同事写的)展示了简单的属性实现:

在上面的示例中有一个简单的 getter/setter 对,它不做任何额外的工作(例如完整性检查或边界检查),但此代码可能是复杂的执行边界检查、完整性检查等。这只是测试示例。

不要担心get_parent_this帮助模板中的“奇怪”代码。最“可怕”的事情是偏移计算。nullptr (NULL, 0x0) 地址用作存根。我们不会从该地址写入或读取。我们仅将它用于基于子对象地址的所有者对象偏移量计算。我们可以使用任何地址代替 0x0。所以,这没有意义。


属性用法:

  1. 如果有人使用公共数据成员属性在以下情况下可能会有所帮助:1.1。如果出现错误,则跟踪公共数据成员调用;1.2. 轻松升级基于公共数据成员使用的遗留代码;

  1. 您如何看待 C++ 中的属性仿真?是活泼的想法吗?这个想法有缺点吗(请显示)?
  2. 您如何看待从子对象地址计算所有者对象地址?你知道哪些技巧和可能的陷阱?

请告诉我们你的想法!

谢谢!