使用bind代理并扩展console.log

使用bind代理并扩展console.log

var log = (function(a) {
	return console.log.bind(console, arguments[0]);
})('app')
log([123123131], 1);

在EcmaScript5中扩展了叫bind的方法(IE6,7,8不支持),使用方法如下:

function T(id) {
	this.id = "Object";
	this.dom = document.getElementById(id);
	this.init && this.init();
}
T.prototype = {
	init: function() {    
		this.dom.onmouseover = function() {
			//this指向dom
			console.log("Over-->" + this.id);
		}
		this.dom.onmouseout = function() {
			//this指向此对象的实例化t
			console.log("Out -->" + this.id);
		}.bind(this)
	}
};
var t = new T('mulianju') //页面中存在的Id;

bind call 和apply 的区别:

http://www.cnblogs.com/jingwhale/p/4604917.html?utm_source=tuicool&utm_medium=referral

使用bind代理并扩展console.log