相关疑难解决方法(0)

如何在JavaScript中声明命名空间?

如何在JavaScript中创建命名空间,以便我的对象和函数不会被其他同名的对象和函数覆盖?我用过以下内容:

if (Foo == null || typeof(Foo) != "object") { var Foo = new Object();}
Run Code Online (Sandbox Code Playgroud)

这样做有更优雅或简洁的方式吗?

javascript namespaces javascript-namespaces

973
推荐指数
19
解决办法
53万
查看次数

680
推荐指数
19
解决办法
59万
查看次数

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万
查看次数

使用原型的优点,直接在构造函数中定义方法?

我想知道使用这些中的任何一个是否有任何优势,我应该走哪条路?

构造方法:

var Class = function () {

    this.calc = function (a, b) {
        return a + b;
    };

};
Run Code Online (Sandbox Code Playgroud)

原型方法:

var Class = function () {};

Class.prototype.calc = function (a, b) {
    return a + b;
};
Run Code Online (Sandbox Code Playgroud)

我不喜欢这样,使用原型,方法定义与类分开,我不知道是否有任何特定的原因我应该使用它而不是第一种方法.

此外,使用函数文字定义"类"是否有任何好处,而不仅仅是函数定义:

var Class = function () {};
Run Code Online (Sandbox Code Playgroud)

VS

function Class () {};
Run Code Online (Sandbox Code Playgroud)

谢谢!

javascript oop prototype

293
推荐指数
3
解决办法
8万
查看次数

jQuery将更多参数传递给回调

有没有办法将更多数据传递给jQuery中的回调函数?

我有两个函数,我希望回调$.post,例如,传递AJAX调用的结果数据,以及一些自定义参数

function clicked() {
    var myDiv = $("#my-div");
    // ERROR: Says data not defined
    $.post("someurl.php",someData,doSomething(data, myDiv),"json"); 
    // ERROR: Would pass in myDiv as curData (wrong)
    $.post("someurl.php",someData,doSomething(data, myDiv),"json"); 
}

function doSomething(curData, curDiv) {

}
Run Code Online (Sandbox Code Playgroud)

我希望能够将自己的参数传递给回调,以及从AJAX调用返回的结果.

javascript jquery arguments function callback

252
推荐指数
6
解决办法
20万
查看次数

为什么我的JavaScript不能在JSFiddle中运行?

我不知道这个JSFiddle有什么问题.

HTML:

<input type="button" value="test" onclick="test()">
Run Code Online (Sandbox Code Playgroud)

JavaScript的:

function test(){alert("test");}
Run Code Online (Sandbox Code Playgroud)

当我点击按钮时 - 什么也没发生.控制台说"测试未定义"

我已经阅读了JSFiddle文档 - 它说添加了JS代码并添加了<head>HTML代码<body>(所以这个JS代码早于html并且应该工作).

html javascript jsfiddle

113
推荐指数
3
解决办法
5万
查看次数

为什么我的JavaScript函数名称会发生​​冲突?

我写了下面的脚本,只是为了看一个变量和一个分配了函数的函数的名字发生冲突时会发生什么:

var f = function() {
    console.log("Me original.");
}

function f() {
    console.log("Me duplicate.");
}

f();
Run Code Online (Sandbox Code Playgroud)

我得到的输出是"我原创".为什么没有调用其他函数?

另外,如果我将原来的作业改为var f = new function() {,我会得到"我原创",然后是TypeError说object is not a function.有人可以解释一下吗?

javascript function

97
推荐指数
2
解决办法
9449
查看次数

在JavaScript中声明函数

可能重复:
Javascript:var functionName = function(){} vs function functionName(){}

这两种声明函数的方式有什么区别?

function someFunc() { ... }

var someFunc = function() { ... }
Run Code Online (Sandbox Code Playgroud)

我不是在技术意义上问.我不是问哪个更易于阅读,或者哪种风格更受欢迎.

javascript syntax function

91
推荐指数
4
解决办法
8万
查看次数

为何使用命名函数表达式?

我们有两种不同的方式在JavaScript中进行函数表达式:

命名函数表达式(NFE):

var boo = function boo () {
  alert(1);
};
Run Code Online (Sandbox Code Playgroud)

匿名函数表达式:

var boo = function () {
  alert(1);
};
Run Code Online (Sandbox Code Playgroud)

并且可以调用它们boo();.我真的不明白为什么/什么时候我应该使用匿名函数,何时我应该使用命名函数表达式.他们之间有什么区别?

javascript function anonymous-function function-expression

90
推荐指数
2
解决办法
2万
查看次数

这个符号在JavaScript中意味着什么?

这是什么?

这是一系列关于JavaScript中语法的问题.这也是社区Wiki,因此邀请每个人参与维护此列表.

为什么是这样?

Stack Overflow不允许搜索特定字符.因此,在搜索运算符和其他语法标记时,很难找到许多关于运算符和其他语法标记的问题.这也使得关闭重复更加困难.以下列表是为了解决此问题.

主要思想是在Stack Overflow上链接现有问题,因此我们更容易引用它们,而不是复制ECMAScript规范中的内容.

此外,这是PHP符号引用的公然副本.我们需要一个JS.


请帮忙.编辑并添加指向其他运算符/语法参考的链接,或者如果您无法在特定语法上找到好的问题/答案,请添加此问题的答案并将其链接

javascript

86
推荐指数
1
解决办法
14万
查看次数