计数器在javascript中不更新
Counter not updating in javascript?
我正在编写一个函数,该函数将接受一个变量,然后检查该变量是否在localStorage中,如果不是,则将其添加到localStorage。如果它在localStorage中,它会在末尾添加一个数字,以便添加一个新的localStorage键。
到目前为止,我已经读到这里了:
var title = "Test";
test(title);
function test(title) {
counter = 0;
console.log("counter = " + counter);
if (localStorage.getItem(title)) {
counter = counter + 1;
title = title + " " + counter;
console.log("found " + title);
console.log("found " + counter);
test(title);
} else {
console.log("not found " + title);
console.log("not found " + counter);
localStorage.setItem(title, " ");
load();
}
}
function load() {
for (var key in localStorage) {
$(".keys").append(key + "<br />");
}
}
这样,当我运行这个函数5次时,我应该有localStorage键
Test, Test 1, Test 2, Test 3, Test 4
相反,我有localStorage键
Test, Test 1, Test 1 1, Test 1 1 1, Test 1 1 1 1
我不知道为什么数字没有增加,但这里有一个jsFiddle来演示:http://jsfiddle.net/charlescarver/x6ALG/5/
将计数器移到函数外部,这样您就不会在每次调用函数时将其重置为零,并保持title
参数干净,以便您可以使用计数器执行算术。
var counter = 0;
var title = "Test";
test(title);
function test(title) {
var newTitle = title + " " + counter;
console.log("counter = " + counter);
if (localStorage.getItem( newTitle )) {
counter = counter + 1;
console.log("found " + newTitle);
console.log("found " + counter);
test(title);
} else {
console.log("not found " + newTitle);
console.log("not found " + counter);
localStorage.setItem( newTitle, " " );
load();
}
}
function load() {
for (var key in localStorage) {
$(".keys").append(key + "<br />");
}
}
注意newTitle
变量。
演示:http://jsfiddle.net/x6ALG/7/
不要在函数测试中将计数器初始化为0。将其设为全局并在函数外部初始化。每次调用函数时,它都从0开始计数。
相关文章:
- Glassfish没有更新JavaScript文件
- 通过键/值引用更新Javascript对象值
- 更新JavaScript对象中的嵌套属性
- 从另一个页面更新 JavaScript 变量的值
- 如何在运行总计计算器时返回表单输入并更新 JavaScript 变量
- 可以在不重新加载页面的情况下更新javascript中的cookie
- 一个可以'不要更新javascript
- 如何使用PHP更新JavaScript变量
- 更新Javascript货币计算器以实时计算多个总额
- 使用HTML更新JavaScript对象
- 正在更新JavaScript中的表
- 使用SimpleHTTPServer响应的结果更新javascript变量的值
- 无法更新 Javascript 对象文本中的值,然后更新页面
- 从我的 C# 函数更新 Javascript 文件的变量
- 网页编辑器,以便页面在我更新JavaScript和HTML时刷新
- 如何通过更改输入值来更新 JavaScript 中的数组对象
- 从 php 脚本更新 javascript 值
- 单击内部锚点/哈希时自动更新 JavaScript 元素
- 自动更新 JavaScript 中的实际参数
- 更新 JavaScript 中的原型属性