Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何访问多数组JSON对象中的值?_Javascript_Json_Reactjs - Fatal编程技术网

Javascript 如何访问多数组JSON对象中的值?

Javascript 如何访问多数组JSON对象中的值?,javascript,json,reactjs,Javascript,Json,Reactjs,如何访问json对象中的数组数据data const [data, setData] = useState([]) const getData = () => { axiosInstance .get(url + slug) .then(result => setData(result.data)) } useEffect(() => { getData() }, [])

如何访问json对象中的数组数据
data

    const [data, setData] = useState([])

    const getData = () => {
      axiosInstance
        .get(url + slug)
        .then(result => setData(result.data))
    }
    useEffect(() => {
      getData()
    }, [])        
以下是我尝试过的一些方法:

  console.log(data['symbol'])
  console.log(data[0]['symbol'])
  console.log(data[0].symbol)
以下是我所在州正在使用的数据:


为了简单起见,假设我要访问第一个数组,并在控制台中记录
symbol
的所有值。我该怎么做呢?

您的对象
数据
看起来像一个对象数组

这应该起作用:

数据[0][0]。符号
要记录第一个数组的所有符号,请执行以下操作:

console.log(数据[0].map(item=>item.symbol))

您的对象
数据
看起来像一个对象数组

这应该起作用:

数据[0][0]。符号
要记录第一个数组的所有符号,请执行以下操作:

console.log(数据[0].map(item=>item.symbol))

要访问第一个数组,您可以使用此
数据[0]
映射第一个数组中的所有对象并记录它们,您可以执行以下操作

data[0].map(item => console.log(item.symbol))

要访问第一个数组,您可以使用此
数据[0]
映射第一个数组中的所有对象并记录它们,您可以执行以下操作

data[0].map(item => console.log(item.symbol))

console.log(数据[0][0])。它将打印第一个数据数组中的第一个对象。我已经尝试过了,但是我得到了
未捕获的TypeError:无法读取未定义的属性“0”
您在哪里记录它?如果它在获取之外,
数据
在第一次渲染时为空,因此将抛出错误。另外,您应该将
getData
添加到
useffect
依赖项数组中,或者将其移到内部。它在fetch之外,我只是在玩我的JSON对象并对它有感觉,因为我最终将映射此数据。然后在尝试访问它之前检查它是否已填充
if(data.length){console.log(…);}
console.log(data[0][0])。它将打印第一个数据数组中的第一个对象。我已经尝试过了,但是我得到了
未捕获的TypeError:无法读取未定义的属性“0”
您在哪里记录它?如果它在获取之外,
数据
在第一次渲染时为空,因此将抛出错误。另外,您应该将
getData
添加到
useffect
依赖项数组中,或者将其移到内部。它在fetch之外,我只是在玩我的JSON对象并对它有感觉,因为我最终将映射此数据。然后在尝试访问它之前检查它是否已填充<代码>如果(data.length){console.log(…);}来自pilchard注释,我理解如果这超出了获取范围,那么我将得到一个错误。不太清楚为什么,因为我可以通过控制台日志访问
数据
。从pilchard注释中,我了解到如果这不在获取范围内,那么我将得到一个错误。不太清楚为什么,因为我可以通过控制台日志访问
数据。