你知道JavaScript中的每条语句、甚至表达式都有一个结果值吗? 当你在浏览器中测试代码时,经常会在控制台的输出结果的最后面多出一条,大部分为undefined,这个undefined就是一个结果值。 ES7的do表达式 先从ES7的一个提案说起吧:do表达式do{...}(注意:不是do{...}while();中的do) var a,b,c = 3; a = do { if (true) { b = c*3; } }; a; //9 目前的浏览器暂不支持 表达式do{...}的作用就是返回它后面的语句块的结果值,功能其实和return类似,只不过return需要通过函