为什么undefined会被添加到我的字符串中?

时间:2015-11-20 15:45:34

标签: javascript

在理解本地js中发生事情的基础知识时,我非常环保。我很好奇,当我连接以下内容时,为什么我将未定义添加到我的结果中:

function myAdd(x, y) {
  return x + y;
}

myAdd('hello' + ' ' + 'world');

给我" hello worldundefined"

以下内容将为我提供更多我想要的内容:

function myAddB(x, y, z) {
  return x + y + z;
}

myAddB('hello', ' ', 'world');

给了我"你好世界"

或为什么

function myAddC(x, y, z) {
  return x + y + z;
}

myAddC('hello' + ' ' + 'world');

给我" hello worldundefinedundefined"

2 个答案:

答案 0 :(得分:2)

因为y和z是undefined ...

您只传递一个Stringx会有y,而z将为undefined

myAdd('hello' + ' ' + 'world');

'hello' + ' ' + 'world' -> is all concatenated into 1 String...

答案 1 :(得分:1)

在您的第一个示例中,您只将一个参数传递给myAdd - 'hello' + ' ' + 'world'