相关疑难解决方法(0)

JavaScript中的null和undefined有什么区别?

我想知道JavaScript nullundefinedJavaScript 之间的区别.

javascript null undefined

1013
推荐指数
20
解决办法
34万
查看次数

在没有return语句的情况下,javascript函数会返回什么?

我只是想知道,没有return语句的函数(或没有命中任何return语句)返回一个完全等同于false的值?

例如:

function foo(){};
!!foo();
Run Code Online (Sandbox Code Playgroud)

如果在firebug中执行,这应该返回false(但如果我只调用foo(),则不返回任何内容).

非常感谢!

贾森

javascript

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

使用参数数组更改JavaScript函数的参数值无效

我正在学习JavaScript,我对arguments属性数组感到很困惑.

我有一个函数,它接受一个参数并返回它.当我传递参数并使用arguments[0] = value它重新分配时,它正在更新值.

function a(b) {
  arguments[0] = 2;
  return b;
}
console.log(a(1)); //returns 2
Run Code Online (Sandbox Code Playgroud)

但是当我调用没有参数的相同函数时它返回undefined.

function a(b) {
  arguments[0] = 2;
  return b;
}
console.log(a()); //returns undefined
Run Code Online (Sandbox Code Playgroud)

但即使我通过undefined,价值也会更新.

function a(b) {
  arguments[0] = 2;
  return b;
}
console.log(a(undefined)); //returns 2
Run Code Online (Sandbox Code Playgroud)

我认为如果你没有将参数传递给JavaScript函数,它会自动创建它并分配值,undefined并在更新后它应该反映更新的值,对吧?

a()a(undefined)是相同的东西,对不对?

javascript arrays arguments function variable-assignment

36
推荐指数
2
解决办法
2537
查看次数

如果函数没有返回值,那么它在 if 检查时返回什么?

假设我有一个这样的函数:

checkerFunction() {

  let checker = false;
  // Note here I only do a return if the *if* condition is fulfilled
  if (condition) {
    checker = true;
    return checker;
  }
}
Run Code Online (Sandbox Code Playgroud)

然后我用它作为另一个函数的真/假检查:

anotherFunction() {
 // What will happen here if there's no return from this.checkerFunction()
 if (this.checkerFunction()) {
   somethingHappens;
 }
}
Run Code Online (Sandbox Code Playgroud)

将会发生什么

if (this.checkerFunction())
Run Code Online (Sandbox Code Playgroud)

如果 checkerFunction() 中没有返回,因为条件从来都不是 true...它会被解释为 true/false 还是这将是一个错误,为什么?

javascript

0
推荐指数
1
解决办法
1058
查看次数