Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么是+;不是",;功能“;javascript_Javascript_Function_Typeof - Fatal编程技术网

为什么是+;不是",;功能“;javascript

为什么是+;不是",;功能“;javascript,javascript,function,typeof,Javascript,Function,Typeof,如标题所示,为什么 typeof + 没有给出“函数”?+是一个函数,它不是一个函数类型+是一个语法错误。++是一个,而不是一个函数typeof+是一个语法错误。typeof只返回对象()和原语的类型 有关的类型,请参见 正如rid指出的,+是一个操作符,而不是一个对象或原语 typeof仅返回对象()和原语的类型 有关的类型,请参见 正如rid指出的,+是一个操作符,而不是一个对象或原语 。。。因为+是运算符?为什么它应该是函数?什么是JavaScript?JavaScript不是C++:)

如标题所示,为什么

typeof +

没有给出“函数”?

+
是一个函数,它不是一个函数<因此,代码>类型+是一个语法错误。

++
是一个,而不是一个函数<因此,code>typeof+是一个语法错误。

typeof
只返回对象()和原语的类型

有关的类型,请参见


正如rid指出的,
+
是一个操作符,而不是一个对象或原语

typeof
仅返回对象()和原语的类型

有关的类型,请参见


正如rid指出的,
+
是一个操作符,而不是一个对象或原语

。。。因为
+
是运算符?为什么它应该是函数?什么是JavaScript?JavaScript不是C++:)因为
+
是运算符?为什么它应该是函数?什么是JavaScript?JavaScript不是C++():虽然这个答案是完美的,但它确实引出了另一个问题:如果<代码> +>代码>是一个函数,那不是很好吗?代码>变量总计=列表。减少(+,0)。甚至更好的是,如果我们有自动套用/部分应用程序,并且我们定义了
reduce=function(fn,start,list)
,这样我们就可以只做
sum=reduce(+,0)
。不,那只是!是的,在玩了haskell和scheme之后,因为Javascript和他们有点相似,所以我很期待它。显然我被误导了。@user1544128,JavaScript与lisp语言有许多共同之处,但这不是其中之一。@ScottSauyet,你可以很容易地创建一个
var sum=function(a,b){return a+b;}
函数,并以与函数相同的方式使用它。@rid:是的,我理解。我一直在开发一个JS函数编程库,它为我提供了一些我想要的功能。所以我知道如果我喜欢,我可以创造它们。我的
foldl
/
foldr
/
reduce
版本会自动转换,我有一个
add
功能,
sum
是根据
reduce
add
定义的。但是我有很大一部分人会喜欢用这种语言来代替它……虽然这个答案很完美,但它确实引出了另一个问题:如果
+
是一个函数,那不是很好<代码>变量总计=列表。减少(+,0)。甚至更好的是,如果我们有自动套用/部分应用程序,并且我们定义了
reduce=function(fn,start,list)
,这样我们就可以只做
sum=reduce(+,0)
。不,那只是!是的,在玩了haskell和scheme之后,因为Javascript和他们有点相似,所以我很期待它。显然我被误导了。@user1544128,JavaScript与lisp语言有许多共同之处,但这不是其中之一。@ScottSauyet,你可以很容易地创建一个
var sum=function(a,b){return a+b;}
函数,并以与函数相同的方式使用它。@rid:是的,我理解。我一直在开发一个JS函数编程库,它为我提供了一些我想要的功能。所以我知道如果我喜欢,我可以创造它们。我的
foldl
/
foldr
/
reduce
版本会自动转换,我有一个
add
功能,
sum
是根据
reduce
add
定义的。但是我有很大一部分人会喜欢它,如果用语言来代替的话。。。