javascript - 如何以十进制显示给定年份的确切月份

标签 javascript jquery

var schemeduration = '1.5';// 1 year and 5 months
var schemeduration= (parseFloat(schemeduration) * 12).toFixed(0) ;
alert(schemeduration);

1.1 = 13 months
1.2 = 14 months
1.3 = 15 months
1.4 = 16 months
1.5 = 17 months
1.6 = 18 months
1.7 = 19 months
1.8 = 20 months
1.9 = 21 months
1.10 = 22 months
1.11 = 23 months
1.12 = 24 months

如何以十进制显示给定年份的确切月份。对于上面给出的,它应该显示 17,但我得到的值为 18。一年有 12 个月,我需要以月份计算的输出

JSFIDDLE

最佳答案

这应该有效:

var schemeduration = '1.5';

if(schemeduration.indexOf('.') === -1) schemeduration += '.0';

var years = Math.floor(parseFloat(schemeduration));
var months = parseInt(schemeduration.split('.')[1], 10);

schemeduration = years * 12 + months;

alert(schemeduration);

演示:http://jsfiddle.net/NsBxX/1/

关于javascript - 如何以十进制显示给定年份的确切月份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17660062/

相关文章:

javascript - Node.js、Express 和 Mongoose,未定义数据

javascript - asp中继器模板条件验证javascript

jquery - 将 jquery datepicker 放在页面中央

javascript - JQuery Block UI 元素阻塞问题

javascript - javascript 的array.indexOf 的时间复杂度是多少?

javascript - 如何为标题背景图像 onload 事件设置动画?

javascript - 通过 location.replace 替换哈希被认为有害吗?

javascript - 在 Rails 5 中单击浏览器上的后退按钮时,带有 Select2 的表单被复制

javascript - 使用 JavaScript 滚动溢出的 DIV

javascript - 没有时间在窗口卸载时发送获取请求