js函数的三种角色