问题标签 [autovivification]

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 回答
13360 浏览

perl - 如何检查密钥是否存在于深层 Perl 哈希中?

如果我理解正确的话,呼唤if (exists $ref->{A}->{B}->{$key}) { ... }就会出现$ref->{A}$ref->{A}->{B}即使它们之前不存在if

这似乎非常不受欢迎。那么我应该如何检查是否存在“深度”哈希键?

0 投票
2 回答
298 浏览

perl - 为什么 `exists` 会修改我的常量?

exists函数可能会意外地自动激活哈希中的条目。

令我惊讶的是,这种行为也延续到常量:

输出

我怀疑这是一个错误。这是 5.10.1 特有的,还是其他版本的 Perl 表现类似?

0 投票
2 回答
195 浏览

php - PHP中的自动激活

如果我有这个 SQL 查询:

每周和每个键返回的用户数:

那么我该如何计算这些用户呢?我正在努力:

但得到许多错误。

我正在尝试获取堆积条形图的数据。x 轴将显示周数,y 轴将显示用户数,按键字符串分组。

谢谢!亚历克斯

0 投票
6 回答
437 浏览

c# - C#中的自动生存

试图围绕 perl 的 Autovivification 并根据它的声音,它似乎与 C# 中的动态类似,因为动态对象直到运行时才被分配类型,或者,我完全不在这里。如果是这样,那么是否有一个类似的想法可以让我在 C# 中摆脱这种想法?

编辑
好吧,我显然已经走了。因此,作为 2 部分问题的第二部分,C# 中有什么概念上可比的吗?需要明确的是,我正在寻找与 Autovivification 相媲美的 C# 概念。不必完全相同,但在概念上足够接近才有意义。正如我之前所说的那样,无论如何我都不是 perl 黑客或 python 黑客,但是,我熟悉基于 c 的语言 C、C++、C#、java、javascript。我在考虑 C# 的动态,但是,到目前为止,我正在考虑基于这里的信息进行延迟加载,如果这有帮助的话....

0 投票
9 回答
4951 浏览

python - Python:如何更新嵌套字典中键值对的值?

我正在尝试制作一个反向文档索引,因此我需要从集合中的所有唯一单词中知道它们出现在哪个文档中以及它们出现的频率。

我已经使用了这个答案来创建一个嵌套字典。提供的解决方案工作正常,但有一个问题。

首先,我打开文件并列出唯一单词。这些独特的词我想与原始文件进行比较。当有匹配时,频率计数器应该被更新并且它的值被存储在二维数组中。

输出最终应如下所示:

问题是我无法更新字典变量。尝试这样做时,我收到错误:

我想我需要以某种方式将 AutoVivification 的实例转换为 int....

怎么去?

提前致谢

我的代码:

0 投票
5 回答
8135 浏览

ruby - 如果 hash['a'] 不存在,如何分配 hash['a']['b']= 'c'?

有没有比这更简单的方法

0 投票
3 回答
949 浏览

php - PHP 自动生存

更新:我提出这个问题的初衷是确定 PHP 是否真的有这个功能。这在答案对标量问题的关注中丢失了。请改为查看这个新问题:“PHP 是否具有自动生存功能?” 这个问题留在这里供参考。

根据 Wikipedia,PHP 没有 autovivification,但此代码有效:

输出:

我发现这段代码也有效:

但是添加此行会导致警告(“警告:不能将标量值用作数组”)

这里发生了什么?为什么在索引后添加关联元素时会失败?这是“真正的”类似 Perl 的自动生存,还是它的某种变体,还是其他什么?

编辑:哦,我现在看到标量错误,哎呀!这些按预期工作:

那么,php 确实有 autovivification 吗?在 Google 中搜索“php autovivification”并没有找到规范的答案或示例。

0 投票
3 回答
715 浏览

php - PHP有自动生存吗?

在PHP.net中搜索autovivification 没有结果。在撰写本文时,维基百科声称只有 Perl 拥有它。在谷歌搜索“php autovivification”时没有明确的结果。

此 PHP 代码运行良好:

任何人都可以提供 PHP 确实具有此功能的规范答案(最好有参考资料),以及任何细节,例如引入它的版本、怪癖、快捷方式等?

0 投票
3 回答
1064 浏览

perl - 取消引用未定义数组引用时的 Perl 激活问题

我很难理解为什么以下工作:

而以下不起作用

我知道 perl 带来了生命(自动激活)未定义的引用。但是我仍然对为什么后一个代码段会抛出 FATAL 感到困惑。

0 投票
6 回答
6382 浏览

python - 如何为实例更改 dict() 的行为

因此,我正在编写一个扩展字典的类,该字典现在使用“dictify”方法将自身转换为字典。我想做的是改变它,以便在对象上调用 dict() 导致相同的行为,但我不知道要覆盖哪个方法。这是不可能的,还是我错过了一些非常明显的东西?(是的,我知道下面的代码不起作用,但我希望它说明了我正在尝试做的事情。)

编辑:为了更清楚地显示问题:

我希望 dict(b) 与 b.dictify() 相同