为什么我会收到错误消息,说明未定义拆分?

时间:2020-04-21 06:34:55

标签: javascript split discord

var anssep = answer.split(" ")
var answer = (" ")
if(anssep[0] == "send"){
  var toSend = answer.replace((anssep[0]+" "), "")
  bot.channels.cache.get("701888561640636510").send(toSend)

这是应该将我输入到控制台中并在此机器人的Discord服务器上打印出来的代码,但出现此错误

TypeError:无法读取未定义的属性“ split”

3 个答案:

答案 0 :(得分:2)

您正试图在尚未声明和定义的名为split的字符串中使用answer。 根据以下内容交换第1行和第2行:

var answer = (" ")
var anssep = answer.split(" ")

答案 1 :(得分:1)

该错误通常意味着您正在尝试调用未定义的方法。在您的情况下,这可能意味着名为answer的变量是未定义的,但在不知道该变量是如何创建的情况下无法确定。

您是否尝试通过浏览器调试javascript源?您可以在那一点上停下来看看变量是否有值。

答案 2 :(得分:0)

首先确定它不是未定义的,然后确保它是一个字符串:

if(answer !== undefined){
  var anssep = answer.toString().split(" ")
} else {
 console.log('answer is undefined')
}