Javascript 未使用来自JSONP API的信息创建对象
我对jQuery和Javascript比较陌生,我正在尝试使用从API接收到的信息创建一个对象。对于数组Javascript 未使用来自JSONP API的信息创建对象,javascript,jquery,json,api,Javascript,Jquery,Json,Api,我对jQuery和Javascript比较陌生,我正在尝试使用从API接收到的信息创建一个对象。对于数组users中的每个用户,该对象应该包含基本信息的对象。为此,我为每个用户调用一个API,然后将json传递给应该创建其属性的构造函数。但是,当我运行代码时,对象只有一个name属性。而且只针对第一个用户,而不是所有用户 有人能告诉我我做错了什么吗 代码如下: $(文档).ready(函数(){ 变量url=”https://wind-bow.gomix.me/twitch-api/strea
users
中的每个用户,该对象应该包含基本信息的对象。为此,我为每个用户调用一个API,然后将json传递给应该创建其属性的构造函数。但是,当我运行代码时,对象只有一个name属性。而且只针对第一个用户,而不是所有用户
有人能告诉我我做错了什么吗
代码如下:
$(文档).ready(函数(){
变量url=”https://wind-bow.gomix.me/twitch-api/streams/";
var用户=[“ESL_SC2”、“OgamingSC2”、“cretetion”、“freecodecamp”、“storbeck”、“habathcx”、“RobotCaleb”、“Noobs2nijas”];
var streamersObj={};
对于(var i=0;i });代码>您正在创建一个字符串,然后为该字符串指定属性。尝试:
function StreamerObjCreate (jsonObj, name) {
streamersObj[name] = {
name: jsonObj.name,
onStream: jsonObj.stream,
channel: jsonObj._links.channel,
stream: jsonObj._links.self
}
console.log(streamersObj);
}
似乎每次都在connectToApi函数中重写url变量。试试这个
function connectToApi (target) {
var targetUrl = url + target + "?" + "callback=?";
$.getJSON(targetUrl, function (json) {
StreamerObjCreate(json, target);
});
}
只是一个注释:$.getJSON函数不向回调函数发送JSON,所以不要使用“JSON”作为变量名,这会让人困惑。更准确的说法是“数据”。