2020 Front End - js Interview Question 1 - la diferencia entre la función autoejecutable
para involucrarse en problemas, no prolongados, vea el tema:
Pregunta de la otra parte:
1. Método uno
(function() {
console.log(999)
}());
2. Método dos
(function() {
console.log(999)
})();
Descripción del problema:
1、方式1 中function(){
}后加一个()如何理解?
2、方式2 中(function() {
})后接一个(),如何理解?
3、请看下面的形式
function() {
console.log(999)
}();
这种形式可不可以,为什么?
4、立即执行函数必须是表达式,这个表达式是什么意思?
respuesta
En primer lugar, no mire las preguntas planteadas, de hecho, solo hay un punto central, que es si function(){}
la autoejecución es factible y el principio de ejecución.
Los detalles son los siguientes:
1. Método uno
Siempre que no se permita a la función () {} ocupar la primera línea y no se permita la gramática del símbolo js, entonces todo es posible, como de la siguiente manera tres:
(function () {
console.log("方式一");
}());
2. Método dos
(function () {
console.log("方式二");
})();
// 3. Método tres
-function () {
console.log("方式三");
}();
+function () {
console.log("方式四");
}();
!function () {
console.log("方式五");
}();
[
function () {
console.log("方式六");
}(),
];
// 3、方式三
~function () {
console.log("方式七");
}();