JS 中的迭代、JSON 和回调
iteration, JSON and callback in JS
(使用 Google 翻译器翻译)
嗨,我正在学习 javascript,我正在尝试模拟 yahoo finance 页面上股票报价的变化。
我阅读了来自 Whosebug 页面的许多回复,然后我就这样做了。
http://js.do/code/53880
如果您使用 google chrome,进入控制台大约一分钟后会出现错误。
Control -Shift -J(控制台选项卡/错误)
错误:
net::ERR_INSUFFICIENT_RESOURCESjquery-1.9.1.js:8336 sendjquery-1.9.1.js:7978 jQuery.extend.ajaxVM8678:12 更新
页面也很滞后
$(function(){
$(function() {
setInterval(update, 0);
});
function update() {
var query = "select * from yahoo.finance.quotes where symbol = ";
var symbolo = "'AAPL'";
var yql = "http://query.yahooapis.com/v1/public/yql?q=" + escape(query+symbolo) + "&format=json&diagnostics=true&env=store://datatables.org/alltableswithkeys&callback=?";
var xhr2 = $.ajax({
url: yql,
jsonp: "myCallback",
dataType: 'jsonp',
success: function(data) {
var keys = data.query.results.quote;
$("#a").html(keys.LastTradePriceOnly);
},
error: function (xhr, ajaxOptions, thrownError) {
alert("oth1"+xhr.statusText);
alert("oth2"+xhr.responseText);
alert("oth3"+xhr.status);
alert("oth4"+thrownError);
}
});
}
});
setInterval(update, 0);
您一直在尽可能快地产生 Ajax 请求。然后你 运行 资源不足(可能在第一个请求被处理之前)。
运行 update
函数 一次 ,然后从 setTimeout
内部再次调用它(最好使用基于 setTimeout
的延迟) =13=] 和 error
函数。
(使用 Google 翻译器翻译) 嗨,我正在学习 javascript,我正在尝试模拟 yahoo finance 页面上股票报价的变化。
我阅读了来自 Whosebug 页面的许多回复,然后我就这样做了。
http://js.do/code/53880 如果您使用 google chrome,进入控制台大约一分钟后会出现错误。 Control -Shift -J(控制台选项卡/错误)
错误: net::ERR_INSUFFICIENT_RESOURCESjquery-1.9.1.js:8336 sendjquery-1.9.1.js:7978 jQuery.extend.ajaxVM8678:12 更新
页面也很滞后
$(function(){
$(function() {
setInterval(update, 0);
});
function update() {
var query = "select * from yahoo.finance.quotes where symbol = ";
var symbolo = "'AAPL'";
var yql = "http://query.yahooapis.com/v1/public/yql?q=" + escape(query+symbolo) + "&format=json&diagnostics=true&env=store://datatables.org/alltableswithkeys&callback=?";
var xhr2 = $.ajax({
url: yql,
jsonp: "myCallback",
dataType: 'jsonp',
success: function(data) {
var keys = data.query.results.quote;
$("#a").html(keys.LastTradePriceOnly);
},
error: function (xhr, ajaxOptions, thrownError) {
alert("oth1"+xhr.statusText);
alert("oth2"+xhr.responseText);
alert("oth3"+xhr.status);
alert("oth4"+thrownError);
}
});
}
});
setInterval(update, 0);
您一直在尽可能快地产生 Ajax 请求。然后你 运行 资源不足(可能在第一个请求被处理之前)。
运行 update
函数 一次 ,然后从 setTimeout
内部再次调用它(最好使用基于 setTimeout
的延迟) =13=] 和 error
函数。