纯函数可以调用外部函数吗?

bbn*_*bnn 5 functional-programming function concept pure-function

纯函数可以调用外部方法吗?

例如:

class Dog {
  function jump(name) {
    return "a dog named " + name + " jumped!"
  }

  function jumpTwice(names) {
    var result = [];
    for (var i = 0; i < 2; i++) {
       result.push(jump(names[i]));
    }
    return result.join("\n");
  }

}
Run Code Online (Sandbox Code Playgroud)

可以jumpTwice()算是一个pure function?

Luc*_*tti 7

什么时候可以

纯f函数可以调用任何其他函数/方法g0...gn.但也g0...gn必须是纯洁的.

当你不能

只要你获得一个纯函数f并从内部调用非纯函数,那么就不再是纯粹的.gff