js表达式与语句的区别

http://www.2ality.com/2012/09/expressions-vs-statements.html

http://www.jb51.net/article/31298.htm

表达式    语句

  表达式语句 如 {a:'a'}  function () {}

为了冲突  表达式上下文 不允许 { function 开头

eval(“{a:'a'}”) 解析时  为 语句上下文 可用"({a:'a'})" 变为表达式上下文

function () { return "abc" }()

SyntaxError: function statement requires a name 你会得到一个语法错误(函数声明不可以是匿名的):

function foo() { return "abc" }()

function foo() { return "abc" }() 还会得到一个语法错误(函数声明不能被理解执行):

() 作用与表达式上下文解析 但 不允许以function开头

故可以用 添加一元运算符解决

+function () {return :'a'}()

-function () {return :'a'}()

!function () {return :'a'}()

上一篇:laravel 列表搜索查询(when,with用法以及关联图像id处理图像路径)


下一篇:Python的pep8(代码规范)