当前位置: 首页 > 知识库问答 >
问题:

我想循环数组,并使我的循环返回函数,如果名称不存在?

曾昂然
2023-03-14

我想在数组上循环,并使我的循环返回函数或一个时间字符串表示名称存在?这是错误类型错误:无法读取未定义的var x=arr[i]的属性“name”。.name;

var arr = [
  {id: 1, name: "php"},
  {id: 2, name: "mysql"},
  {id: 3, name: "laravel"},
  {id: 4, name: "codeigniter"},
  {id: 5, name: "wordpress"},
  {id: 6, name: "sql"},
  {id: 7, name: "jquery"},
  {id: 8, name: "javascript"},
];

var string;

function checkemail(arr, string) {
  var i;

  for (i = 0; i < arr.length; i++) {
    let newname = arr[i].name;

    if (newname !== string) {
      return storename();
    } else {
      console.log("name found")
    }
  }
}
}

console.log(checkemail(arr, "javascript"));

共有1个答案

从光启
2023-03-14

在决定数组中元素的存在性之前,应该遍历整个数组

当名称和参数第一次不匹配时,您正在调用storename函数。这将使函数检查第一个元素,并在调用storename函数后返回。

我的实现

function storename() {
  return 'storename function';
}
var arr = [
  { id: 1, name: "php" },
  { id: 2, name: "mysql" },
  { id: 3, name: "laravel" },
  { id: 4, name: "codeigniter" },
  { id: 5, name: "wordpress" },
  { id: 6, name: "sql" },
  { id: 7, name: "jquery" },
  { id: 8, name: "javascript" },
];

var string;

function checkemail(arr, string) {
  var i;
  let isFound = false;
  for (i = 0; i < arr.length; i++) {
    let newname = arr[i].name;
    if (newname === string) {
      isFound = true;
      i = arr.length; // Item found, you can exit the loop now
      return "name found";
    }
  }
  if(!isFound) {
    return storename()
  }
}


console.log(checkemail(arr, "javascript"));
 类似资料:
  • 假设我有一个大小为[10]的数组,当该数组被填满时,我想实现一个FIFO结构,而不是它只是填满了,因此无法向数组中添加新的东西,并抛出旧的东西。 例如,如果我有一个包含汽车制造商的字符串数组,当我的数组中有10个制造商时,我希望删除最旧的条目,添加最新的条目,但要考虑kepping FIFO。我如何在这样的方法中实现它:

  • 我下面有这个功能,我在某处做错了什么。 要运行,从程序的主要部分调用函数,如下所示: 代码底部的返回False与如果product为None有关,这是在另一个函数中编写了一些代码之后需要的,但在这个函数中必须执行。 如果用户输入的数量是一个数字,所有工作正常。如果是其他任何东西,则打印值错误,您可以输入另一个输入。如果你把另一个字母etc放进去,它就会重复一遍,如果你把一个数字放进去,它就会接受它

  • 如果以前有人问过这个问题,我很抱歉,但我找不到答案。如何循环使用嵌套数组的数组,并在控制台中打印项目出现的实例数? 因此应该打印出名称“bob”的数字2,因为“bob”在数组中出现两次。 这是我的阵列和我目前拥有的:

  • 问题内容: 今天,有人陪我一起滥用Java 中的关键字。我编写了一个简单的循环来验证数组中是否存在某些内容。假设是一个length数组,这是我的代码: 现在有人告诉我这不是一个很好的编程,因为我在循环内使用了该语句,这将导致垃圾回收发生故障。因此,更好的代码将是: 问题是我无法正确解释为什么第一个for循环不是一个好习惯。有人可以给我一个解释吗? 问题答案: 现在有人告诉我这不是一个很好的编程,因

  • loop 有个用途是尝试一个操作直到成功为止。若操作返回一个值,则可能需要将其传递给代码的其余部分:将该值放在 break 之后,并由 loop 表达式返回。 fn main() { let mut counter = 0; let result = loop { counter += 1; if counter == 10 {

  • 下面是我想在用户健康和龙健康时循环的功能