![](/img/trans.png)
[英]JavaScript: change a variable with a prototype function inside the constructor
[英]Javascript: change variable inside a function?
如何在函數內部更改變量? 我試圖基於一個預先分配的值來歸檔一個簡單的切換功能。 這里是代碼,這里是http://jsfiddle.net/StartStep/jLQyx/
<p onclick="testit()">CLick</p>
<p id="value">Value</p>
var valuediv = document.getElementById("value");
function testit() {
if (c == 1) {
var c = 1;
valuediv.innerHTML = c
} else {
var c = 0;
valuediv.innerHTML = c
}
}
在這里看看JavaScript如何使用全局變量 。
var valuediv = document.getElementById("value");
var c = 1;
function testit() {
if(c === 1)
{
c = 0;
valuediv.innerHTML = c
} else {
c = 1;
valuediv.innerHTML = c
}
}
這可以修復您的代碼。 您在if / else塊中創建了新的“ c”變量,原因是它們以“ var”為前綴。
小提琴: http : //jsfiddle.net/jLQyx/2/
刪除var
關鍵字,並寫c = 1
& c = 0
。 您正在函數內部重新創建變量c
,而不是更新全局c
變量。
var valuediv = document.getElementById("value");
var c = 1;
function testit() {
if (c == 1) {
c = 0;
valuediv.innerHTML = c;
} else {
c = 1;
valuediv.innerHTML = c;
}
}
無需使用條件:
var valuediv = document.getElementById("value"),
c = 1;
function testit() {
c = +!c;
valuediv.innerHTML = c
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.