Skip to content

当我们这么做时,会发生什么?

javascript
function bark() {
  console.log('Woof!')
}

bark.animal = 'dog'

A. 正常运行! B. SyntaxError. 你不能通过这种方式给函数增加属性。 C. undefined D. ReferenceError

答案: A

解析:

这在 JavaScript 中是可以的,因为函数是对象!(除了基本类型之外其他都是对象) 函数是一个特殊的对象。你写的这个代码其实不是一个实际的函数。函数是一个拥有属性的对象,并且属性也可被调用。