javascript中函数可以看成一个对象吗?

初学Javascript,看到了这样一段代码
if (!Date.now)
Date.now = function() {
return +new Date();
};
我不明白,now明明是一个函数,这里怎么好像当了对象来使用
var d3_arraySlice = [].slice, d3_array = function(list) {
return d3_arraySlice.call(list);
};
这一段好像也是这样,silce明明是个函数,这里就变成了个对象,还有call方法

从某种意义上来说,可以看成一个对象,建议看原型链知识。

JS可以当成java来使用

函数在很多情况下可以当成对象的

js所有内容都可以当对象,只是null,undefined这种不能操作,call和apply是方法特有的

if (!Date.now)
这里就是被当作对象来处理的,
意思就是“判断Date.now是否为真,若真则执行,反之则不执行”;相信这个你也是懂的。
函数的标志性符号();

如何学习JAVASCRIPT