相关疑难解决方法(0)

JavaScript中的函数表达式与声明有什么区别?

以下代码行之间有什么区别?

//Function declaration
function foo() { return 5; }

//Anonymous function expression
var foo = function() { return 5; }

//Named function expression
var foo = function foo() { return 5; }
Run Code Online (Sandbox Code Playgroud)
  • 什么是命名/匿名函数表达式?
  • 什么是声明的功能?
  • 浏览器如何以不同方式处理这些结构?

对类似问题(var functionName = function(){} vs function functionName(){})的响应是不是完全正确?

javascript

469
推荐指数
4
解决办法
15万
查看次数

功能上的额外括号

可能重复:
围绕JavaScript对象/函数/类声明的括号是什么意思?
这个"(function(){});",括号内的函数在javascript中是什么意思?
一个Javascript函数

我遇到类似这样的标记:

var something = (function(){
    //do stuff
    return stuff;
})()
document.ondblclick = function(e) { alert(something(e)) };
Run Code Online (Sandbox Code Playgroud)

我不明白的开()()something变量.你能解释一下写这样的差异吗?

var something = function(){
    //do stuff
    return stuff;
};
Run Code Online (Sandbox Code Playgroud)

谢谢!

javascript closures

10
推荐指数
2
解决办法
1585
查看次数

我可以使用ID作为变量名吗?

我发现设置一个与元素id同名的变量很方便,例如:

randomDiv = document.getElementById("randomDiv");
  randomDiv.onclick = function(){ /* Whatever; */ }
  randomDiv.property = "value";
Run Code Online (Sandbox Code Playgroud)

这适用于Chrome和Firefox,但不适用于IE8; 给出错误Object不支持此属性或方法.

创建一个名称与元素ID匹配错误(或不良做法)的变量,或者这是Internet Explorer的另一个实例吗?

javascript variables syntax

6
推荐指数
1
解决办法
7885
查看次数

标签 统计

javascript ×3

closures ×1

syntax ×1

variables ×1