将变量连接到对象中的值

时间:2014-01-15 15:15:09

标签: javascript object key-value

我尝试将值连接到对象中另一个值(rollno)的末尾。该值应为每次增加1的数字(或字符串中的数字)。 (或者添加一个数字增加1的新属性也同样好)。我尝试了各种各样的方法,下面是我设法得到的最接近的方式。代码只运行一次然后中断。

如何更改我的代码以实现此目的,或者我是以错误的方式进行此操作?

<button id='button'>add roll number</button>

student = {

name : "David Rayy", 
sclass : "VI", 
rollno : 12
};

function addRollno() {
    var num

    student.rollno = student.rollno + ' ' + (student.rollno +1);

    console.log(student.rollno);
}

document.getElementById('button').addEventListener('click', addRollno, false);

2 个答案:

答案 0 :(得分:0)

要将下一个递增数字添加到rollno属性,您需要存储最后使用的rollno,将其递增1并添加到rollno;

<button id='button'>add roll number</button>
<script>
student = {
    name : "David Rayy", 
    sclass : "VI", 
    lastRollno : 12,
    rollno : 12
};

function addRollno() {
    var num

    student.rollno = student.rollno + ' ' + (++student.lastRollno);

    console.log(student.rollno);
}

document.getElementById('button').addEventListener('click', addRollno, false);
</script>

要仅将rollno递增1并且不存储任何先前的rollno值,您只需将其递增1;

<button id='button'>add roll number</button>
<script>
student = {
    name : "David Rayy", 
    sclass : "VI", 
    rollno : 12
};

function addRollno() {
    var num

    student.rollno = ++student.rollno;

    console.log(student.rollno);
}

document.getElementById('button').addEventListener('click', addRollno, false);
</script>

答案 1 :(得分:0)

您可以使用速记Assignment运算符+=

student.rollno +=1;

Demo