WEB开发网
开发学院网页设计JavaScript Json客户端Cache提高Web性能 阅读

Json客户端Cache提高Web性能

 2009-10-11 00:00:00 来源:WEB开发网   
核心提示: 在校内网的这个界面中,不管你怎么变化省市信息都截取不到浏览器发向服务器的请求,Json客户端Cache提高Web性能(2),但是大学的信息都能正常显示,这是为什么?观察了校内网的Html和JavaScript http://static.xiaonei.com/js/searchschlist.

在校内网的这个界面中,不管你怎么变化省市信息都截取不到浏览器发向服务器的请求。但是大学的信息都能正常显示。这是为什么?观察了校内网的Html和JavaScript http://static.xiaonei.com/js/searchschlist.js?ver=22411.js 后发现,触发的JavaScript并没有使用XMLHttpRequest请求服务器,而是在反复的操作一个叫做allUnivList的对象,反复遍历这个对象取得大学的数据。

Json客户端Cache提高Web性能

allUnivList这个对象的定义在 http://static.xiaonei.com/js/allunivlist.js?ver=22411.js 中。打开 http://static.xiaonei.com/js/allunivlist.js?ver=22411.js 只有一行,看来是经过压缩了。

Json客户端Cache提高Web性能

就是在这一行中使用Json串存储了所有的大学信息。下载下来这个文件。写一段JavaScript可以打印出所有大学的信息。

<html>
<head>
<title>Test</title>
<script type="text/javascript" src="allunivlist.js"></script>
<script type="text/javascript" src="cityArray.js"></script>
</head>
<body>
<script type="text/javascript" language="javascript">
for(var country=0; country<1 /*allUnivList.length*/; country++)
{
//Country
//document.writeln("Country Name: " + allUnivList[country]["name"] + " Country ID: " + allUnivList[country]["id"] + " <br/>");

//Province
for(var province=0; province<allUnivList[country].provs.length; province++)
{
//Build Province
//document.writeln("ProvinceName:" + allUnivList[country].provs[province]["name"] + "@@@@@ProvinceID:" + allUnivList[country].provs[province]["id"] + "<br/>");

//University
for(var university=0; university<allUnivList[country].provs[province].univs.length; university ++)
{
//document.writeln("UniversityName:" + allUnivList[country].provs[province].univs[university]["name"] + "@@@@@UniversityID:" + allUnivList[country].provs[province].univs[university]["id"] + "<br/>");
document.writeln(allUnivList[country].provs[province]["name"] + "::" + allUnivList[country].provs[province]["id"] + "::" + allUnivList[country].provs[province].univs[university]["name"] + "::" + allUnivList[country].provs[province].univs[university]["id"] + "<br/>");
}

//document.writeln("<br/>");
}
//document.writeln("<br/>");
}
</script>

<script type="text/javascript" language="javascript">
for(var i=1; i<=34;i++)
{
var city = eval("_city_"+i);
for(var l=0; l< city.length; l++)
{
document.writeln(i+ ":" +city[l] + "<br/>");
}
}
</script>
</body>
</html>

上一页  1 2 3 4  下一页

Tags:Json 客户端 Cache

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接