[JS]14強関数を呼び出す


関数の呼び出し

// 1)
function sum(arg1, arg2) {
  return arg1 + arg2;
}
sum.apply(null, [1,2]); // 3
// sum(1,2) -- 위와 동일한 결과
//--------------------------------
// 2)
o1 = {val1:1, val2:2, val3:3}
o2 = {v1:10, v2:50, v3:100, v4:25}
function sum(){
    var _sum = 0;
    for(name in this){
        _sum += this[name];
    }
    return _sum;
}
alert(sum.apply(o1)) // 6, o1.sum과 같은 의미
alert(sum.apply(o2)) // 185, o2.sum과 같은 의미
1)関数sum=Functionという名前のオブジェクトインスタンス
すなわちfuncは,オブジェクト機能が持つ手法(応用など)を継承する.
オブジェクト機能を呼び出す方法apply
2)
: sum.apply(o 1)を呼び出すと、暗黙varthis=o 1になります.呼び出し済み
: sum.apply(o 2)呼び出し時にvarthis=o 2を暗示する.呼び出し済み