apply和call方法强制指定函数的上下文对象

<script>
    function juggle(){
        var result = 0;
        for(i = 0;i<arguments.length;i++){
//result = result + arguments[i]; 一般求和方法,记得要初始化一个result
            result += arguments[i];//数组求和的常用方法
        }
        this.result = result;//在上下文保存求和结果
        alert(this.result);
            }
            var a = {};//创建2个对象,作为要用的上下文对象
            var b = {};
        juggle.apply(a,[0,3,5,9,1,2]);//apply方法强制指定上下文,apply方法的第二个参数是一个数组
        juggle.call(b,6,7,8,9);//call方法强制指定上下文,call方法的第二个参数是一个参数列表
</script>

数组的求和的两种方式;

在上下文保存求和的结果(注意这行代码,有了这行代码意味着我们可以随意的创建2个对象,都可以作为this的实例对象)

apply方法强制指定上下文,apply方法的第二个参数是一个数组;
call方法强制指定上下文,call方法的第二个参数是一个参数列表


原文地址:https://www.cnblogs.com/Jerry-spo/p/6484349.html