数组长度未显示

如何解决数组长度未显示

我正在使用dialogflow构建聊天机器人。以下是一个示例问题数组,但是实际和示例的格式相同:

qstion[{
Question 1,What is 33+32?,Okay,Question 2,What is 76+32?,Last Question,Did you like the game? 
}]

我正在使用以下代码获取数组的长度:

app.intent('First',(conv) => {
    const ans = conv.parameters.any;
    if(ans == 65){
            senddata[0] = qstion[0] + ans;
            conv.add(qstion.length);
            conv.ask(qstion[1]);
            }
    else{
            conv.add('Please enter a valid number');
            conv.ask(qstion[0]);
        }
});

该应用在此处崩溃。你能帮我得到数组的长度吗?

更新:

这是我使用console.log(qstion)时在日志上显示的方式:

qstion[
'Question1,What is 33+32','Okay,Question2,What is 76+32',Did you like the game'
]

解决方法

由于您的问题带有“ dialogflow”标记,因此我假设您正在使用actions-on-google库。您看到的问题不是数组长度错误,而是使用错误的方法发送响应。

actions-on-google中,您将分别呼叫conv.askconv.close来提问或结束对话。

您的代码段显示conv.add(qstion.length)。但是,您正在使用的conv.add库中不存在,可能是导致崩溃的原因。 conv.add仅在使用新的Actions Builder和@assistant/conversation库时才有效,两者都与Dialogflow不兼容。

,

那不是有效的数组,或者不是数组中的有效对象。我想你的意思是要像这样的字符串数组

qstion = [
"Question 1","What is 33+32?","Okay","Question 2","What is 76+32?","Last Question","Did you like the game?" 
]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?