我正在尝试使用我为查询Instagram而构建的vanilla JavaScript feed解析器来解决CoffeeScript问题。我一直在靠墙试图让逻辑在for循环中工作,我可以根据网络上的100个例子得到一个简单的for循环工作但是我还没有得到一个for循环中的更多代码。我接近这个完全错了吗?我传递给函数的参数“results”是一个JSON对象。
_feed: (results) ->
images = results.length
for img in images
a = document.createElement('a');
a.href = results.data[i].images.standard_resolution.url;
img = document.createElement("img");
img.src = results.data[i].images.low_resolution.url;
a.appendChild(img);
document.getElementsByTagName('body')[0].appendChild(a);
我一直在说出意外的错误。有什么提示吗?
答案 0 :(得分:3)
我会尝试这样的事情:
_feed: (results) ->
for result in results.data
a = document.createElement 'a'
a.href = result.images.standard_resolution.url
img = document.createElement 'img'
img.src = result.images.low_resolution.url
a.appendChild img
document.body.appendChild a
主要区别在于for
循环遍历results.data
中的每个项目。你的循环中仍然有results.data[i]
,如果你逐项迭代,这不是必需的。
答案 1 :(得分:0)
确保您使用的是使用软标签(空格)而不是硬标签的编辑器;并检查所有行是否按预期缩进:前两行有两个空格,其他行有四个空格;等等,否则你肯定会在标签和空格中混淆这些错误。
我也看到代码最后有一个随机的反引号;是在实际代码中还是只是在这里复制?
另外,开始忽略分号;你不需要它们:))