Javascript 是否可以创建类似于typeof工作原理的函数,例如使用空格而不是括号?

Javascript 是否可以创建类似于typeof工作原理的函数,例如使用空格而不是括号?,javascript,function,Javascript,Function,那么,你知道typeof,对吗 我想做的是创建一个类似的函数,在这个例子中,让我们使用一个简单的构造函数: const constructorof=obj=>{ 返回obj.constructor; }; 它的语法是这样的: constructorof(someObjectOrWhatever); 但我希望它是这样的: someObjectOrWhatever的构造函数; 有办法做到这一点吗?没有,您不能用Javascript中的自定义逻辑创建新关键字。您要么需要一个函数调用,函数中包含逻

那么,你知道
typeof
,对吗

我想做的是创建一个类似的函数,在这个例子中,让我们使用一个简单的
构造函数:

const constructorof=obj=>{
返回obj.constructor;
};
它的语法是这样的:

constructorof(someObjectOrWhatever);
但我希望它是这样的:

someObjectOrWhatever的构造函数;

有办法做到这一点吗?

没有,您不能用Javascript中的自定义逻辑创建新关键字。您要么需要一个函数调用,函数中包含逻辑,要么需要内联逻辑而不是调用函数。无论哪种方式,
someobject的构造函数或任何东西的构造函数都不是有效的语法。

不,typeof不是一个函数,它是一个运算符。显而易见的问题是,你为什么要使用这种“语法”?不要吓到你:p
typeof
不是一个函数。它是一个运算符,由关键字调用。将关键字添加到语言将是。。。不平凡。您可能需要创建自己的JavaScript引擎版本,以及您想要在其中使用它的任何浏览器的版本。避免键入两个字符和编写标准的、可支持的代码需要付出高昂的代价。您需要像Microsoft使用typescript那样创建自己的语言。FWIW,transpiled语言比编译成机器代码或解释器的语言更容易创建,因为您的“机器”是一种非常高级的语言。我自己做的很糟糕,忘了那件事。