问题标签 [reserved-words]

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 投票
2 回答
2746 浏览

asp.net-mvc-3 - ASP.Net MVC3 路由保留字?

我有一个定义了标准路由的 ASP.Net MVC 应用程序。该应用程序为我们的数据库编辑元数据。网址方案是:

这将调用控制器edit上的函数tables并将表的名称作为参数传入id。除了一个名为con. 以下 URL 会导致 404:

我唯一能想到的是,它con必须是某种与 MVC 路由相关的保留字。有谁知道是否是这种情况以及是否还有其他保留字要避免?

0 投票
5 回答
373 浏览

c++ - 不能使用“not”、“or”或“plus”作为标识符?

我试图编译这个:

但显然 GCC (4.6) 认为这些很特殊,而我找不到一个标准来说明它们是特殊的(C++0x n3290 或 C99 n2794 都不是)。我正在用g++ -pedantic -std=c++0x. 这是编译器的便利吗?我该如何关闭它?不应该-std=c++0x关闭这个“功能”吗?

PS:嗯,显然,MarkDown 代码格式也是这么想的……

0 投票
3 回答
1982 浏览

database - CakePHP 中保留的数据库表名是什么?

我正在计划我的数据库,因为 CakePHP 没有用自己的前缀命名它的类,所以有许多类可能会与根据命名约定创建的模型类发生冲突。

所以我的问题分为三个部分:

  1. 是否有保留的数据库表名列表或检查是否存在的简单方法?如果我计划具有 100 个表的数据库并注意到某些表及其连接必须重命名,那将是一件痛苦的事情......

  2. 有没有一种简单的方法可以在不破坏任何 CakePHP 魔法的情况下解决它?有建议吗?最好的方法是在表名的开头添加自己的前缀“my_”或类似的前缀以其他方式命名表吗?

  3. 命名空间或类似的东西会出现在 CakePHP 版本 2 中,它允许使用各种表名吗?

0 投票
3 回答
1649 浏览

delphi - Delphi 7类助手的先见之明

今天我碰巧用Delphi 7编译了一个类定义像这样的代码

而且,令我惊讶的是,编译器吐了

“系统单元过期或损坏:缺少‘TClassHelperBase’”

看起来 Delphi7 已经对这个helper词有一些保留的用法。

Delphi 在 Delphi 8 中引入了 Helper 类。它们旨在将 VCL 绑定到 .Net。那么,Delphi7 有先见之明吗?

0 投票
4 回答
1752 浏览

ruby - 确定字符串是否为 Ruby 保留字的内置方法?

Ruby 是否有内置的东西来确定字符串是否是保留字?像"next".is_keyword?什么?

0 投票
4 回答
1277 浏览

c++ - C++ 使用 C 代码在定义和标识符中使用双下划线

我知道在 C++ 中,标识符中的双下划线是为编译器保留的。我在相应的头文件中有一些具有类似特征的 C 代码:

我将在 C++ 项目中使用此标头,并计划在 C++ 中执行以下操作:

标准涵盖了 C++ 中的这种可接受的行为吗?

0 投票
1 回答
1538 浏览

javascript - javaScript 保留关键字

我想知道如何管理 JavaScript 的保留关键字/函数。

例子:

根据:

http://www.quackit.com/javascript/javascript_reserved_words.cfm

delete是 JavaScript 的保留关键字。

然后在某些上下文中考虑以下代码段:

这个对象有一个delete属性,但是它的名字是由 JavaScript 保留的,所以它应该会失败,对吧?

然而,当我执行cookieManager.delete();webconsoleFireFox我得到以下输出,表明它工作正常:

但是,如果您运行其中的代码,JsLint则会说

建议这是一个很大的禁忌方法,应该避免。

所以我什么时候应该考虑保留关键字,就像在这个例子中它似乎像我想要的那样工作(删除关键字在对象 cookieManager 的上下文中,因此不会导致冲突,因此可以使用它)或者应该我遵守圣经JsLint并重命名javascript保留关键字的任何内容?在这种情况下,我可以轻松地将 .delete() 重命名为 .remove()。

0 投票
4 回答
33035 浏览

javascript - 使用保留字作为属性名,重温

保留字可以用作对象的属性名称吗?

这个问题是在之前的 Stack Overflow 问题中间接提出的:Browser support for using a reserved word as a property name in JavaScript。答案似乎是Alex Wayne的普遍共识:

您可以使用这些词,但只能作为字符串而不是速记属性。

虽然我认为他们在这方面可能比我知识渊博,并且在某些情况下使用保留字可能是一个坏主意,但我认为他们的结论基于两点是错误的:

  • 使用它们作为“速记”属性来测试保留字

  • HTMLFormElement 使得不可能在“速记”中使用保留字

首先,使用保留字列表,将每个作为属性添加到ObjectandHTMLElement中,同时作为obj["word"]and obj.word,然后作为obj["word"]and检索obj.word。在 63 个案例中,所有 8 个测试都正常工作。

其次,HTMLFormElement 使这项工作成为必要,因为它使用速记符号在其元素中检索。如果<input name='typeof' value='scalar' />是表单的元素,则form.typeof== “标量”。

根据我的经验,保留字通常是数据造成的(例如名为“private”的列),而不是程序造成的。因此,它们会污染 JSON 对象,并从那里污染输入,然后再从那里污染 HTMLFormElement。简而言之,如果没有大量(恕我直言,不必要的)工作,就不可能保持保留字被强制以简写方式正确工作。

在我看来,这些真正的问题:

  • 需要注意不要与现有属性冲突,而不是保留字。

  • (很多如果不是全部)变量不能是保留字

  • 使用保留字作为属性可能(但不一定)令人困惑

那么这个结论是否正确,将保留字作为属性名称,并以字符串或速记的形式访问它们就可以了——只要对这种情况应用一点常识?

0 投票
1 回答
785 浏览

ruby-on-rails - 模型是rails中的保留关键字吗?

有谁知道定义一个名为“model”的rails模型是否会成为一个问题?

上一个问题中给出的链接似乎已损坏(http://wiki.rubyonrails.org/rails/pages/ReservedWords)

谢谢!

0 投票
1 回答
144 浏览

php - 在 CodeIgniter 中有没有使用 PHP 保留字作为控制器名称的方法?

充分了解风险,有没有什么方法可以在 CodeIgniter 中使用 PHP 保留字作为控制器名称?