function(){}()让变量快速初始化结果
var timestamp = function(){ var timestamp = Date.parse(new Date()); return timestamp/1000;
}();
var timestamp = Date.parse(new Data()); timestamp = timestamp/1000;
看上去好像比上面的操作简洁多了,只需要两行代码。但是我们仔细去观察,就会发现第一段代码其实本身仅是一个赋值操作,在function中完成的所有动作将会在function执行完后全部释放,整个代码看上去好像只执行了一条语句一样。
而实际上更重要的意义在于它可以让一个变量在初始化时,就具备了运算结果的效果。
使用new function初始化一个可操作对象
var person = new function(){
var name = '小明';
this.speak = function(age){
console.log(name + '已经' + age + '岁了');
}
}
person.speak(11);
此时的new里面的this是指向使用的自己
new Function()是函数原型的一个实例化
var message = new Function('msg','alert(msg)');
相当于
function message(msg) {
alert(msg);
}