withの使い方で、こういうのはありなのかな?

var alerm = {
	time : 1000,
	msg : 'Wake up!',
	start : function(){
		var self = this;
		setTimeout(function(){
			alert(self.msg);
		}, this.time);
	}
}
alerm.start();

これを

var alerm = {
	time : 1000,
	msg : 'Wake up!',
	start : function(){
		with(this){
			setTimeout(function(){
				alert(msg);
			}, time);
		}
	}
}
alerm.start();

こう。
ダメ? それとも既出?