问题标签 [key]

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 投票
9 回答
201376 浏览

javascript - 如何找到对象的键?

我知道在 JavaScript 中,对象兼作哈希,但我一直无法找到一个内置函数来获取密钥:

我想要类似的东西

自己编写一个函数来迭代项目并将键添加到我返回的数组中很简单,但是有没有一种标准的更简洁的方法来做到这一点?

我一直觉得它一定是一个我错过但我找不到的简单内置函数!

0 投票
6 回答
2786 浏览

encoding - 如何生成唯一、小的、随机且用户友好的密钥?

几个月前,我的任务是为我们的 Web 应用程序实现一个独特的随机代码。代码必须对用户友好且尽可能小,但本质上仍然是随机的(因此用户无法轻易预测序列中的下一个代码)。

它最终生成了如下所示的值:

不幸的是,我从未对实施感到满意。Guid 是不可能的,它们太大了,用户很难输入。我希望有更多的 4 或 5 个字符/数字,但如果我们编码为,我们的特定实现会产生明显的图案序列少于 9 个字符。

这是我们最终要做的事情:

我们从数据库中提取了一个唯一的连续 32 位 id。然后我们将它插入到一个 64 位 RANDOM 整数的中心位中。我们创建了一个易于键入和识别的字符(AZ、az、2-9 跳过容易混淆的字符,如 L、l、1、O、0 等)的查找表。最后,我们使用该查找表对 64 位整数进行 base-54 编码。高位是随机的,低位是随机的,但中心位是连续的。

最终的结果是一个比 guid 小得多的代码,而且看起来很随机,尽管它绝对不是。

我对这个特定的实现从来不满意。你们会怎么做?

0 投票
5 回答
818 浏览

perl - 保存 Perl Windows 环境键 UPCASES

我有一个用 Perl 编写的框架,它设置了一堆环境变量来支持进程间(通常是子进程)通信。我们在 XML-ish 文件中保存一组键/值对。我们尝试将键名命名为 camel-case somethingLikeThis。这一切都很好。

最近我们有机会将控制(链)进程从 Windows 传递到 UNIX。当我们从 Windows 将哈希值吐出%ENV到文件时,somethingLikeThis密钥变为SOMETHINGLIKETHIS. 当 Unix 进程获取文件并重新加载环境并查找它的值时,$ENV{somethingLikeThis}它的值不存在,因为 UNIX 区分大小写(从 Windows 端来看,相同的代码可以正常工作)。

此后我们返回并将所有键更改为大写并解决了问题,但这很乏味并给用户带来了痛苦。有没有办法让 Windows 上的 Perl 保留环境哈希键的字符大小写?

0 投票
19 回答
75939 浏览

database - 代理与自然/业务键

我们又来了,旧的争论仍然存在......

我们最好有一个业务键作为主键,还是我们宁愿有一个代理 id(即 SQL Server 标识)对业务键字段具有唯一约束?

请提供例子或证据来支持你的理论。

0 投票
2 回答
6764 浏览

visual-studio - Home 键转到 Visual Studio 中的行首?

Visual Studio 中的选项在哪里使 Home 键转到行首?

现在你必须做

Home,Home

或者

Home, Ctrl+Left Arrow

我宁愿家在线路的起点。我以前看过,但现在找不到了。

0 投票
20 回答
851531 浏览

javascript - 如何有效地计算 JavaScript 中对象的键/属性的数量

计算对象的键/属性数量的最快方法是什么?是否可以在不迭代对象的情况下做到这一点?即,不做:

(Firefox 确实提供了一个神奇的__count__属性,但它在版本 4 左右被删除了。)

0 投票
6 回答
6857 浏览

java - 如何检查在Java中启动时按住的键

我正在尝试编写一个在程序首次启动时弹出的分辨率选择对话框。为了防止用户感到无聊,我想实现一个相当标准的功能,您可以使用复选框关闭该对话框,但通过在启动时按住 alt 键将其恢复。

不幸的是,没有明显的方法可以询问 java 当前是否正在按下给定的键。您只能通过 KeyListener 注册以获悉新的按键,但如果按键在应用程序启动之前启动,这将无济于事。

0 投票
8 回答
70333 浏览

svn - 如何使用公钥/私钥对获得 SVN 结帐?

我必须检查一些代码并运行它。我有网址:

我有一个带有他们私钥的文件。我该怎么做才能获得此代码?

0 投票
4 回答
496 浏览

php - 在 PHP 中获取最后添加的数组项的键的最佳方法是什么?

有没有更好的方法来执行以下操作:

这将给出最近添加的数组元素的键。

有一个更好的方法吗?

0 投票
4 回答
1134 浏览

.net - 哪些 dotnet 集合类的项目可以按“加法顺序”枚举并通过键检索?

我被引导相信我不能指望添加到字典中的项目的顺序来进行枚举。

是否有一个类(如果可能的话是通用的),可以使用键向其中添加项目并且可以按附加顺序枚举或可以通过键检索哪些项目?

澄清:我不想在 Key Order 中列举。我想按顺序列举。也就是说,我希望能够在 FIFO(先进先出)的基础上通过枚举来检索项目。