Javascript 可以在JS中获得保留字列表(变量、函数、对象名)吗?

Javascript 可以在JS中获得保留字列表(变量、函数、对象名)吗?,javascript,Javascript,这里有很多很棒的信息 我可以从那里提供的网站抓取关键词,但是我想问的是,是否可以实时抓取保留的关键词?也许有某种存储它们的结构 对于窗口中的全局对象,我可以使用以下方法获取它们: for(var i in window) doSomethingWith(i) 但我还需要所有特定于语言的关键字,如:if、case、switch、等 对不起我不想写“then”。在过去的一个小时里,我正在用Pascal编写代码(回忆过去的时光),他妈的,我脑子里一直想着它 我想做什么:听起来可能有点奇怪,但是我正在

这里有很多很棒的信息

我可以从那里提供的网站抓取关键词,但是我想问的是,是否可以实时抓取保留的关键词?也许有某种存储它们的结构

对于窗口中的全局对象,我可以使用以下方法获取它们:

for(var i in window) doSomethingWith(i)
但我还需要所有特定于语言的关键字,如:if、case、switch、

对不起我不想写“then”。在过去的一个小时里,我正在用Pascal编写代码(回忆过去的时光),他妈的,我脑子里一直想着它

我想做什么:听起来可能有点奇怪,但是我正在构建一个可以创建元素的应用程序,它们有名称、值、公式,并且公式都是纯JS公式,除了我运行一个正则表达式来修改变量,并想保留javascript语法

例如,如果公式是:
if(a
在这种情况下,我只想修改a、b、cd

如果公式是这样的:
switch(a){case 0:a=b;break;case 1:b=c;…}
在这种情况下,我想过滤掉“开关、断路器、外壳”

也许我应该删除这个问题,如果你在谷歌上搜索“javascript保留字”,你会发现:

abstract (*)
as (2)
boolean
break
byte
case
catch
char
class (2)
continue
const (2)
debugger (*)
default
delete
do
double
else
enum (*)
export (2)
extends (2)
false
final
finally
float
for
function
goto (*)
if
implements (*)
import (2)
in
instanceof
int
interface (2)
is (2)
long
namespace (2)
native (*)
new
null
package (2)
private (2)
protected (*)
public (2)
return
short
static (2)
super (2)
switch
synchronized (*)
this
throw
throws (*)
transient (*)
true
try
typeof
use (2)
var
void
volatile (*)
while
with
资料来源:


我不知道“抓取”它们是什么意思,但你可以将所有这些单词放在一个数组中,然后在一块文本中搜索数组中的每个元素……

在管道上快速搜索(你应该总是先用谷歌搜索)得到了我从未想到会看到的代码,一个保留单词检查器。我甚至没有试过玩它,所以不知道它对不对

https://github.com/revolution42/Javascript-Reserved-Word-Checker/blob/master/checker.js

为什么您需要实时地使用它们?他们并不是经常改变。如果您需要“实时”@Limey,只需将它们从wbsite中拉出来并放在代码中的数组常量中,只需询问是否有解决方案而不是抓取:)您所说的“抓取”是什么意思?请参阅规范:@lukas.pukenis-感谢您通过提供另一个通用的、未定义的术语来澄清这一点。具体是让人们更容易帮助你的好方法!这很完美,但是这里没有像“then”这样的关键词。我想要它们all@lukas.pukenis-我不知道“then”是个关键词。根据该引用(应该包括尚未实现的关键字),它不是一个关键字word@lukas.pukenis-不确定为什么您认为它是“保留的”。如果出于自身原因需要保留一些单词,可以将它们添加到数组中。这里有一个更好的参考,有更多的“特殊”词。它也不包括“then”。+1我总是先用谷歌搜索,只是想不出一个简单的解决方案。谢谢你的链接