function的各做写法

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);
}
posted @ 2018-08-07 16:47  大棒子  阅读(783)  评论(0编辑  收藏  举报