为什么函数声明后可以不加分号而函数表达式后要加分号呢?

JavaScript:为什么函数声明后可以不加分号而函数表达式后要加分号呢?
是就是这个硬性规定的,还是有什么机制原因呢

function functionName(arg0,arg1,arg2){
//函数声明
}


var functionName=function(arg0,arg1,arg2){
//函数表达式
}; //注意分号

原文地址:https://www.cnblogs.com/dongruiha/p/7567566.html