Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript:在函数中更改变量?_Javascript_Jquery - Fatal编程技术网

Javascript:在函数中更改变量?

Javascript:在函数中更改变量?,javascript,jquery,Javascript,Jquery,如何更改函数中的变量?我试图基于一个预先指定的值归档一个简单的切换函数。这里是代码,这里是 单击 值 var valuediv=document.getElementById(“值”); 函数testit(){ 如果(c==1){ var c=1; valuediv.innerHTML=c }否则{ var c=0; valuediv.innerHTML=c } } 删除var关键字并写入c=1&c=0。您正在函数中创建变量c,而不是更新全局c变量 var valuediv = document

如何更改函数中的变量?我试图基于一个预先指定的值归档一个简单的切换函数。这里是代码,这里是

单击

值 var valuediv=document.getElementById(“值”); 函数testit(){ 如果(c==1){ var c=1; valuediv.innerHTML=c }否则{ var c=0; valuediv.innerHTML=c } }


删除
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
关键字并写入
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");
var c = 1;

function testit() {
    if(c === 1) 
    {
        c = 0; 
        valuediv.innerHTML = c
    } else {
        c = 1; 
        valuediv.innerHTML = c
    }
}
这将修复您的代码。您在if/else块中创建了新的“c”变量,因为在它们前面加了“var”


小提琴:

看看这里的

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”


Fiddle:

无需使用条件句:

var valuediv = document.getElementById("value"),
    c = 1;
function testit() {
    c = +!c;
    valuediv.innerHTML = c
}

无需使用条件句:

var valuediv = document.getElementById("value"),
    c = 1;
function testit() {
    c = +!c;
    valuediv.innerHTML = c
}

如果
c==1
你为什么要分配
c=1
?如果
c==1
你为什么要分配
c=1
?嗯,好吧,啊哈,很抱歉我的沉默也要感谢所有其他的回答:嗯,好的,哈哈,很抱歉我的愚蠢,也要感谢所有其他的回答。必须从某个地方开始:)很好,但我必须用它来比较该值,并用if/else执行其他代码。。。不,只需打印值:D谢谢你too@AgeLonglife好的,但是如果可能的话,试着将相同的语句放在条件之外的
if
else
中。但是如果我使用“case/if”,这将是不同的事情,但我必须使用它来比较该值,并用if/else执行其他代码。。。不,只需打印值:D谢谢你too@AgeLonglife好的,但是如果可能的话,试着在
if
else
中把相同的语句放在条件之外。但是如果我使用“case/if”,它会有所不同