立即执行函数
IIFE - immediately-ivnoked function expression
自动执行,执行完成后立即释放
一个功能性是用作初始化
(function(){console.log('函数体')})();( function(){} () ) w3c建议的
不行执行的function test(){ consloe,log(1)}() // 语法报错 uncaught syntaxError :但是var test - function test(){}( consloe,log(1)) // 可以执行(function test(){})(); 可以执行
1.一定是表达式才可以()立即执行;在 var a = function () {} ()中,是 = funciton (){} 是一个表达式,类似有 ! function(){ }(); 2&& function(){}() ; + function (){}()
执行完就销毁
let test = function (){ console.log(1) } ()console,log(test) // undefined 执行完就销毁了
function test(){}() // 报错的 ,不是表达式function test() { function test() {}js引擎为了不报错 (6) // 等于6理解为这样}(6) =======》
逗号运算符
let a = (1+3 , 4+ 6) // 10 输出求后面的一个
var a = (function one (){return 1},function two(){return '2)()// '2' typeOf(a) string
var b = 10if(function a (){}){ ====> ( function a (){} ) 是一个表达式b+= typeOf(a) 所以a 是undefined}console.log(b) // 10undefined
