学习 API - 使用 JSON 获取视频 - 需要帮助

Learning APIs - Working with JSON to grab a video - Need assistance

感谢您阅读我的问题。我正在尝试学习如何使用 API,当然这通常与操作 JSON 数据密切相关。

我想在尝试更复杂的事情之前对这个概念有一个简单的了解,所以假设请求的响应是:

{
  "embed": {
    "code": "<iframe src="https://www.youtube.com/watch?v=dQw4w9WgXcQ" frameborder="0" width="608" height="468" scrolling="no"></iframe>"
   }
}

我的下一个最佳猜测是 1) 在上面的代码周围加上引号,2) 将其分配给并声明为变量,比方说 "var data" 3) 为解析的 [= 声明另一个变量22=]数据:

var solu = JSON.parse(data);

但除此之外,我很难访问对象的元素。如果这听起来让您感到困惑,我深表歉意。如果我从错误的角度接近这个问题,请告诉我。

您不需要使用 JSON.parse(data),因为您已经在使用 json 对象。

var data = {
  "embed": {
    "code": '<iframe src="https: //www.youtube.com/watch?v=dQw4w9WgXcQ" frameborder="0" width="608" height="468" scrolling="no"></iframe>'.replace(/</g, '&lt;')
  },
  // keys can be wrapped with string or not
  key: 'got the key',
  'stringKey': 'got the string identifier',
  'key with spaces': 'keys can have spaces or any reserved character',
  arrayOfStuff: ['thing', 'stuff', 'more']
}

// you can get data using the dot operator to nest deeper
console.log( data.embed );
// or use the array brackets syntax
console.log( data['embed'] );
// you can mix it up as both are equivelent, this will dig further into the object to code
console.log( data['embed'].code );
// if you key has reserved characters you must use the array bracket syntax
console.log( data['key with spaces'] );
// you can use arrays as well
console.log( data.arrayOfStuff[0] )
console.log( data['arrayOfStuff'][1] )
<script src="http://codepen.io/synthet1c/pen/WrQapG.js"></script>