Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.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_Object_Button - Fatal编程技术网

如何在javascript中按下按钮时连续更改对象的属性值

如何在javascript中按下按钮时连续更改对象的属性值,javascript,object,button,Javascript,Object,Button,我试图创建一个简单的代码,每次按下一个按钮时在文本区域增加一个数字。我在一个对象的属性中有一个起始值0,然后是一个接受该值并添加一个值的函数。我知道它会在第一次添加一个,然后继续使用相同的值。那么,有没有一种方法可以不断地改变一个对象的属性呢 <script> var myObj = { value:0 } function addObj(){ var numOfObj = myObj.value + 1; document.getElementById('t

我试图创建一个简单的代码,每次按下一个按钮时在文本区域增加一个数字。我在一个对象的属性中有一个起始值0,然后是一个接受该值并添加一个值的函数。我知道它会在第一次添加一个,然后继续使用相同的值。那么,有没有一种方法可以不断地改变一个对象的属性呢

<script>
var myObj = {
    value:0
}
function addObj(){
    var numOfObj = myObj.value + 1;
    document.getElementById('textarea1').value = numOfObj; 
};
</script>

var myObj={
数值:0
}
函数addObj(){
var numobj=myObj.value+1;
document.getElementById('textarea1')。value=numobj;
};

巴拉吉·西瓦纳是正确的,但以下是原因的解释:

当你打电话的时候

var numOfObj = myObj.value + 1;
您没有更改
myObj.value
的值。您将获得
myObj.value的值并添加1。由于变量从不更改,因此始终为0+1

通过调用“++”运算符,实际上是在更改值,因此

var numOfObj = ++myObj.value;
将基本上运行以下操作:

myObj.value = myObj.value + 1;
var numOfObj = myObj.value;

Edit:Oops是前缀实现了我所说的。使用post fix++不会更改myObj.value。

var numobj=myObj.value++;var numobj=++myObj.value;不是真的-这是一个后缀操作符@伯吉:好球。我将其更改为前缀并添加了一个链接。