javascript将数字添加到宽度()

时间:2015-05-01 12:42:34

标签: javascript

我想将20px添加到自动生成的属性的宽度。 我发现这篇文章,但我似乎无法找到适合我的问题的解决方案。 Javascript (+) sign concatenates instead of giving sum of variables

这是我的代码:

settings.autowidth ? $(self).width() : settings.width;

settings.autowidth = true,所以这将返回$(self).width(),这是151px。

当我想像这样添加20像素时,我得到15120px

settings.autowidth ? $(self).width()+'20px' : settings.width;

上述链接中的解决方案说我需要添加一些括号,但我不知道放在哪里。

4 个答案:

答案 0 :(得分:3)

不需要px

当你添加px和引用'时,你要说的是在这种情况下添加宽度'20px' 150,这样你最终会添加两个字符串。

要将树状结构化为数字,请删除引号'px

settings.autowidth ? $(self).width() + 20 : settings.width;

答案 1 :(得分:1)

您正在尝试使用数字计算字符串。 基本上你是这样做的: "string" + 150 哪会导致"string150";

正确的做法是: settings.autowidth ? $(self).width() + 20 : settings.width;

答案 2 :(得分:1)

$(self).width()的值不是字符串"151px",而是151的数字。

只需将20添加到号码:

settings.autowidth ? $(self).width() + 20 : settings.width;

如果您希望采用"171px"格式,则将px添加到其中:

settings.autowidth ? ($(self).width() + 20) + 'px' : settings.width;

答案 3 :(得分:0)

您可以使用一点实用功能:

auto generate value property = true