use*_*328 5 javascript character
我在这里查看了一段代码http://cssdeck.com/labs/bjiau4dy,我在Javascript框中看到了这个 -
!+-+-+!+-+-+!+-+-+!+-+-+!+-+-+!+-+-+!+-+-+!+-+-+!
Run Code Online (Sandbox Code Playgroud)
那是做什么的?为什么它不会在控制台中抛出错误?
谢谢!
这些符号中的任何一个都会将其后面的函数转换为函数表达式,而不是函数声明。把它们全部放在一起只是为了好玩。
()如果您尝试通过在声明后面放置来调用常规函数:
function () {
// this is a syntax error...
}();
Run Code Online (Sandbox Code Playgroud)
你会得到一个语法错误:
语法错误:意外的标记(
因为你不能调用函数声明。
所以人们通常将匿名函数括在括号中,将其变成函数表达式:
(function () {
// this will execute immediately
}());
Run Code Online (Sandbox Code Playgroud)
您可以通过在前面添加任何这些符号来实现相同的效果:
!function () {
// this will also execute immediately
}();
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请参见此处:http ://kangax.github.com/nfe/#expr-vs-decl