无法理解 javascript 语法:if (parameter == "someValue") parameter = ""

Trouble understanding javascript syntax: if (parameter == "someValue") parameter = ""

我无法理解这个 JS 语法:

function myFunction(a) {
  if (a == "someValue") a = ""; 
}

这是某种 shorthand 吗?如:如果 "a" 等于 "someValue",则将 "a" 设置为空?

您的代码等同于

function myFunction(a) {
  if (a == "someValue")
  {
     a = ""; 
     
  }
}

如果传递给 myFunction 的参数值为 "someValue",则将参数设置为空字符串

这只是没有大括号的标准 if statement。您的代码与此基本相同:

if (a == "someValue") {
  a = "";
}

A​​ shorthand 会像这样使用 ternary operator 之类的东西:

a = (a == "someValue") ? "" : a;

// if "a" is loosely equal to "someValue", then assign an empty string to "a",
// else leave "a" unchanged by assigning it to it's current value.