【问题标题】:Updating Object Properties from inside an Array从数组内部更新对象属性
【发布时间】:2020-08-04 03:13:34
【问题描述】:

我知道这都是基本的东西,但对我来说都是新的,所以任何帮助都会很棒。我正在尝试创建一个更新对象属性的函数,其中对象都在数组中。这是我正在参加的训练营的作业,这就是我到目前为止所得到的。我知道返回需要在循环范围之外,但我更关注条件语句的正确表示法以及访问和操作数组内的对象键。

function findObject(array, key, target) {
  //look through the array by creating a for loop

  for (let i = 0; i < array.length; i++) {

    //set conditional to check if an object in array has target value on its key prop

    if (array[i].key === target) {

      //if the above condition is met, return that object
      return array[i];
    }

  } //if its not return null
  return null;
}

提示:3。实现函数 findObject。 它的参数是:

一个称为数组的数组
数组中填充了对象
一个名为 key
的字符串 一个叫做目标的字符串

遍历数组并返回其键属性具有目标值的对象

如果没有找到目标,则返回 null

【问题讨论】:

  • 你确定key 被传递到findObject 函数中吗?我想你不会有那个。
  • 是的,在代码编辑器中提出这样的问题
  • 函数 findObject(array, key, target){

标签: javascript arrays json object


【解决方案1】:

似乎 key 是一个字符串,其值是您要搜索的属性/键的名称。请检查以下代码是否有效。

function findObject(array, key, target) {
let foundObj=null;
  //look through the array by creating a for loop

  for (let i = 0; i < array.length; i++) {

    //set conditional to check if an object in array has target value on its key prop

    if (array[i][key] === target) {

      //if the above condition is met, return that object
      foundObj=array[i];
      break;
    }

  } //if its not return null
  return foundObj;
}
console.log(findObject([{name:"usa",id:"usa"},{name:"uk",id:"uk"}],"name","usa"));

【讨论】:

  • 不,它不喜欢那样...我已经尝试了几次类似的迭代,创建一个分配给空数组的变量并将数组[i][key]推入其中...没有运气
  • @MichaelJarrett 我在代码中给出了一个调用 findObject 函数的例子。请检查。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-03-31
  • 1970-01-01
  • 2023-03-18
  • 2019-04-28
  • 2018-11-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多