function showObject(obj){
//递归显示object
if(!obj){return;}
for(var i in obj){
if(typeof(obj[i])!="object" || obj[i]==null){
document.write(i + " : " + obj[i] + "<br/>");
}else{
document.write(i + " : object" + "<br/>");
}
}
}
这个方法里,for循环里的变量i为什么没有初始化就可以用哇谁能帮我注释一下这个代码么这里添加两个键值对a和b,并增加一个按钮。给a设置固定的值,当点击按钮时,修改b的值:<body>
<p>You have viewed this page <span id="count">0</span> time(s).</p>
<p><input type="button" value="changeStorage" onClick="changeS()"/></p>
<script>
var storage = window.localStorage;
if (!storage.getItem("pageLoadCount")) storage.setItem("pageLoadCount",0);
storage.pageLoadCount = parseInt(storage.getItem("pageLoadCount")) + 1;//必须格式转换
document.getElementByIdx_x("count").innerHTML = storage.pageLoadCount;
showStorage();
if(window.addEventListener){
window.addEventListener("storage",handle_storage,false);
}else if(window.attachEvent){
window.attachEvent("onstorage",handle_storage);
}
function handle_storage(e){
if(!e){e=window.event;}
showObject(e);
}
function showObject(obj){
//递归显示object
if(!obj){return;}
for(var i in obj){
if(typeof(obj[i])!="object" || obj[i]==null){
document.write(i + " : " + obj[i] + "<br/>");
}else{
document.write(i + " : object" + "<br/>");
}
}
}
storage.setItem("a",5);
function changeS(){
//修改一个键值,测试storage事件
if(!storage.getItem("b")){storage.setItem("b",0);}
storage.setItem('b',parseInt(storage.getItem('b'))+1);
}
function showStorage(){
//循环显示localStorage里的键值对
for(var i=0;i<storage.length;i++){
//key(i)获得相应的键,再用getItem()方法获得对应的值
document.write(storage.key(i)+ " : " + storage.getItem(storage.key(i)) + "<br>");
}
}
</script>
</body>这是所有的代码。JavaScript对象函数
//递归显示object
if(!obj){return;}
for(var i in obj){
if(typeof(obj[i])!="object" || obj[i]==null){
document.write(i + " : " + obj[i] + "<br/>");
}else{
document.write(i + " : object" + "<br/>");
}
}
}
这个方法里,for循环里的变量i为什么没有初始化就可以用哇谁能帮我注释一下这个代码么这里添加两个键值对a和b,并增加一个按钮。给a设置固定的值,当点击按钮时,修改b的值:<body>
<p>You have viewed this page <span id="count">0</span> time(s).</p>
<p><input type="button" value="changeStorage" onClick="changeS()"/></p>
<script>
var storage = window.localStorage;
if (!storage.getItem("pageLoadCount")) storage.setItem("pageLoadCount",0);
storage.pageLoadCount = parseInt(storage.getItem("pageLoadCount")) + 1;//必须格式转换
document.getElementByIdx_x("count").innerHTML = storage.pageLoadCount;
showStorage();
if(window.addEventListener){
window.addEventListener("storage",handle_storage,false);
}else if(window.attachEvent){
window.attachEvent("onstorage",handle_storage);
}
function handle_storage(e){
if(!e){e=window.event;}
showObject(e);
}
function showObject(obj){
//递归显示object
if(!obj){return;}
for(var i in obj){
if(typeof(obj[i])!="object" || obj[i]==null){
document.write(i + " : " + obj[i] + "<br/>");
}else{
document.write(i + " : object" + "<br/>");
}
}
}
storage.setItem("a",5);
function changeS(){
//修改一个键值,测试storage事件
if(!storage.getItem("b")){storage.setItem("b",0);}
storage.setItem('b',parseInt(storage.getItem('b'))+1);
}
function showStorage(){
//循环显示localStorage里的键值对
for(var i=0;i<storage.length;i++){
//key(i)获得相应的键,再用getItem()方法获得对应的值
document.write(storage.key(i)+ " : " + storage.getItem(storage.key(i)) + "<br>");
}
}
</script>
</body>这是所有的代码。JavaScript对象函数
解决方案 »
- Ext.ux.RadioGroup 获取JSON数据显示的问题
- jquery calculation插件的使用
- javascript+ XML的問題
- javascript空格问题
- 正则表达式求以1-8开头的六位数字
- 求:一个判断输入数据是否是整数(80 85 1 等)、带小数的数字(80.5 80.1)?的javascript代码!
- 请救梅花雨、孟子等高手,怎样判断一个域名是否合法?
- 用asp能在网页上作图吗??
- 有没有搞错!!!给分给不了,回复也不好用??csdn管理员哪去了!!!有没有好好测试阿!!过分!!
- Function.prototype 为何没有 prototype 属性?
- 急!!
- 如何用jquery实现打印内容,字体一个一个输出的效果
* 其中obj是一个对象
* 例如{ name:"Vicky", age:18, sex:"female" }
* 这里循环obj对象的所有属性
*/
for(var i in obj){ // 这里是for in 类似C#里面的foreach或者Javas里面的for...in
// 这里的i就是obj某个属性的名称,例如“name”,obj[i]就是取该属性的值,例如:obj["name"]的值是“Vicky”
if(typeof(obj[i])!="object" || obj[i]==null){ // 判断他的属性值是不是为一个对象或null值
document.write(i + " : " + obj[i] + "<br/>");
}else{
document.write(i + " : object" + "<br/>");
}
}
<p>You have viewed this page <span id="count">0</span> time(s).</p>
<p><input type="button" value="changeStorage" onClick="changeS()"/></p><!-- 单击这个button时触发changeS方法 -->var storage = window.localStorage;// 获取浏览器本地缓存对象
if (!storage.getItem("pageLoadCount")) // 判断本地缓存是否存在key为pageLoadCount的值
storage.setItem("pageLoadCount",0); // 如果不存在,设置一个key为pageLoadCount到本地缓存,值为0
storage.pageLoadCount = parseInt(storage.getItem("pageLoadCount")) + 1;//从本地缓存获取key为pageLoadCount的值
document.getElementByIdx_x("count").innerHTML = storage.pageLoadCount; //getElementByIdx_x这个方法应该是自定义的吧??系统貌似没这个方法。看方法名称应该跟getElementById差不多吧?
showStorage(); // 这个方法也是自定义的吧?
if(window.addEventListener){// 判断window是否为有addEventListener这个方法,这个是为某个对象添加事件响应的方法,因为浏览器标准不同,所以分开处理。IE浏览器使用addEventListener附加事件
window.addEventListener("storage",handle_storage,false); //添加storage事件,处理函数为handle_storage,onstorage为HTML5事件,具体可以看这里http://www.w3school.com.cn/html5/html5_ref_eventattributes.asp说明
}else if(window.attachEvent){ // Mozilla系列浏览器使用attachEvent附加事件
window.attachEvent("onstorage",handle_storage); // 添加storage事件响应
}
function handle_storage(e){
if(!e){e=window.event;} // 这个也是浏览器兼容性判断。在IE中,事件对象是通过window.event获取的
showObject(e);
}
function showObject(obj){ // 这个方法就是显示一个对象的所有属性和属性值了。
//递归显示object
if(!obj){return;}
for(var i in obj){
if(typeof(obj[i])!="object" || obj[i]==null){
document.write(i + " : " + obj[i] + "<br/>");
}else{
document.write(i + " : object" + "<br/>");
}
}
}
storage.setItem("a",5);
function changeS(){
//修改一个键值,测试storage事件
if(!storage.getItem("b")){storage.setItem("b",0);}
storage.setItem('b',parseInt(storage.getItem('b'))+1);
}
function showStorage(){
//循环显示localStorage里的键值对
for(var i=0;i<storage.length;i++){
//key(i)获得相应的键,再用getItem()方法获得对应的值
document.write(storage.key(i)+ " : " + storage.getItem(storage.key(i)) + "<br>");
}
}