1 /* 2 * 回调函数: 执行一个函数 A 的时候 有可能执行另外的函数B ,这个 B 就是回调函数 3 * call apply 4 * 可以调用其他的方法 ,并且改变 this 的指向 5 */ 6 7 var found = document.getElementById("outer"); 8 9 var myApp = {}; 10 myApp.color = "green"; 11 myApp.paint = function(node){ 12 node.style.color = this.color; 13 }; 14 15 var findNodes = function(callback, callback_obj){ 16 // 将callback 作为字符串 传递 可以避免使用obj 两次 17 if(typeof callback === "string"){ 18 callback = callback_obj[callback]; 19 } 20 21 // 判断回调函数是否存在 22 if(typeof callback === "function"){ 23 callback.call(callback_obj,found); 24 } 25 }; 26 27 findNodes("paint", myApp);