js之Function类型
函数的几种声明方式
函数可以作为值传递
上述为return出来的值,继续使用,属于常规操作。下面是直接作为参数传递
函数的内部属性
let func = function (num) { if (num <= 1) { return 1 } else { return num * arguments.callee(num - 1) } } alert(func(4)) // 24
arguments.callee是代表自身函数, 但是在使用箭头函数的情况下不生效,后续再确认。
函数的length代表接收参数的长度,prototype是保存所有的实例方法的真正所在,只能通过各个对象的实例去访问,无法遍历。
函数的方法
两者都接收两个参数,一个是作用域,一个是参数,call可以直接传,apply传数组。