apply和call这两个方法个人粗浅的理解是一个对象有权使用另一个对象的方法。
<!DOCTYPE html> <html> <head> <title></title> </head> <body> <script type="text/javascript"> function add(a,b){ return a+b; } function sub(a,b){ return a-b; } console.log(add.call(sub, 3,1)); </script> </body> </html>
运行代码,控制台输出为4。在这里add和sub是两个函数对象。add.call(sub,3,1)是说对象sub可以是用add的方法并执行。结果输出为4。
也可以改为add.call(sub,[3,1]),执行结果也为4.
时间: 2024-09-30 22:55:26