在javascript中对对象的数学操作

Mathematical manipulation on object in javascript

本文关键字:操作 对象 javascript      更新时间:2023-09-26

我正在尝试像这样操作对象中的属性:

for (property in posts.data) {
    property = property+1+",";
    output += property;
}
document.write(output);

属性是数字:0、1、2 等。

在这种情况下,我想得到结果 1,2,3。但相反,我得到 01,11,21,等等...它似乎将该属性视为文本字符串而不是数字。为什么?我能做些什么呢?

1.一元"+"运算符将字符串转换为整数

for (property in posts.data) {
   var t = +property + 1;
   output += t+",";
}

2.Javascript的parseInt方法

for (property in posts.data) {
    var t = parseInt(property, 10)+ 1;
     output += t+","; 
}

parseInt 函数调用(基数)中的第二个参数将告诉函数要遵循的数字系统。

在将

property添加到其中之前,使用 parseInt1转换为整数。

演示:http://jsfiddle.net/mPSnL/

Parse Int中的property变量parseInt()

for (property in posts.data) {
    var p = parseInt(property)+1+",";
    output += p;
 }

你可以强制字符串为 和 int

for (property in posts.data) {
  var v = parseInt(property, 10) + 1;
  output += v + ",";
}