Javascript 在node.js mysql查询中,检查是否未找到匹配项

Javascript 在node.js mysql查询中,检查是否未找到匹配项,javascript,mysql,node.js,node-mysql,Javascript,Mysql,Node.js,Node Mysql,如何检查mysql(node.js)中是否没有找到匹配项 我的数据库不包含名称='abcd'。那么,我如何检查查询是否不匹配?您收到的查询结果是一个空数组([]),因为正如您所说,您的数据库不包含任何带有名称='abcd'的行 当您这样做时: if (result) { if (result) console.log("Test:" + result); ,您将输入if,因为Javascript对[]计算true。看一看,这解释了Javascript如何计算true和false值

如何检查mysql(node.js)中是否没有找到匹配项


我的数据库不包含名称='abcd'。那么,我如何检查查询是否不匹配?

您收到的查询结果是一个空数组(
[]
),因为正如您所说,您的数据库不包含任何带有
名称='abcd'
的行

当您这样做时:

if (result) {
  if (result)
    console.log("Test:" + result);
,您将输入
if
,因为Javascript对
[]
计算
true
。看一看,这解释了Javascript如何计算
true
false

检查结果数组是否为空的更好方法是:

if (result.length > 0) {
  if (result)
    console.log("Test:" + result);

if(!result.length)
在这里可以很好地工作。@BenFortune同意,因为Javascript对
0
计算
false
。只是我喜欢那种冗长的代码编写方式。它不应该是
(如果result.isArray()&&result.length>0)
??不管怎样,本的“消极”是better@BenFortune这对我来说不太好。对我有效的是
if(result.length!=0)
或大于。如果
result.length
大于0,为什么需要检查
if result
if (result.length > 0) {
  if (result)
    console.log("Test:" + result);