Javascript/jQuery给出了添加的奇怪结果

Kur*_*ves -1 javascript jquery addition

我刚开始使用javascript和jquery,现在我遇到了这样的问题:

var myCharacter = ('#myCharacter').css('top'); // gives 140px
var numberOnly = myCharacter.replace('px',''); // gives 140
var total = numberOnly + 20; // gives 14020 not 160
Run Code Online (Sandbox Code Playgroud)

我只是不明白为什么会这样.

ind*_*lee 5

你需要 parseInt()

var total = parseInt(numberOnly) + 20;
Run Code Online (Sandbox Code Playgroud)

因为它numberOnly是一个字符串,而不是一个数字,所以它在一个字符串中添加一个数字,这导致14020为一个字符串