为什么我不能添加到数字对象 属性?

Why can't I add to a numeric object property?

如果我有一个像这样的简单对象:

const currentAccount = [{
    name: 'J.Edge',
    balance: 100,

}]

首先,我是否正确地认为(原谅我的新手,只学习了几周的 JS)我不能直接添加到数字余额 属性 中,如下面的函数,因为 JS 类型强制将余额 属性 的 100 转换为字符串?

const withdraw = (amount) => {
    currentAccount.balance - amount
    return Object.keys(currentAccount)

}

其次,解决这个问题的最简单方法是什么?

您可以使用赋值运算符 +=-=

这与写variable = variable + changevariable = variable - change相同

const currentAccount = [{
    name: 'J.Edge',
    balance: 100,

}];

const withdraw = (amount) => {
    currentAccount[0].balance -= amount
}

const deposit = (amount) => {
    currentAccount[0].balance += amount
}

withdraw(20); // => 100 - 20
deposit(45); // => 80 + 45

console.log(currentAccount[0].balance); // => 125

请注意 currentAccount 是一个数组,因此您需要在更改值之前访问其中的元素。