JavaScript问题:无法理解为什么我的代码不能工作

JavaScript问题:无法理解为什么我的代码不能工作,javascript,Javascript,我是js的新手,我有个问题 这段代码运行得非常好: function test(args){ return "12345 - "+args; } console.log(test("678910")); 但该代码不: function test(args){ if(args = ""){ } return "12345 - "+args; } console.log(t

我是js的新手,我有个问题

这段代码运行得非常好:

function test(args){

    return "12345 - "+args;
}

console.log(test("678910"));
但该代码不:

function test(args){
    if(args = ""){
    
    }
    return "12345 - "+args;
}
console.log(test("678910"));

[args]由于某种原因变得未定义,我不明白为什么,我想这与上下文有关,但我仍然不明白为什么什么都不起作用,非常感谢您的帮助

比较运算符是
=
,而不是
=
args=”“
正在将
args
赋值给空字符串,而不是对其进行比较。因此,您应该使用:

if(args == ""){

这应该很管用;)

或者你可以使用

    function test(args){
      if(args != null){
        return "12345 - "+args;
      }
    }
    console.log(test("678910"));

您必须在if语句中使用
==
,并且还必须使其在
args===“”

如果您不希望它在等于“”时执行任何操作,请使用:


您需要在if语句中将
=
替换为
=
: 否则,您将为
args
参数指定一个空字符串

功能测试(args){
如果(args==“”){
}
返回“12345-”+参数;
}

控制台日志(测试(“678910”))
if(args=”“){
您正在将
args
分配给此处的空字符串。您需要使用
==
==
进行比较此代码之后为什么args变得未定义是困扰我的主要问题当我运行您的代码
args
时,它被设置为空字符串,这是由于您的if语句(
args=“”
)这回答了你的问题吗?我知道==和==之间的区别,我只是没有注意到我的错误,再次感谢大家
    function test(args){
      if(args != null){
        return "12345 - "+args;
      }
    }
    console.log(test("678910"));
if (args == "") {
    // Write something to do here.
}
if (args != null) {
   return "12345 - "+args;
}