Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/405.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我不懂数学_Javascript_Ruby_Math - Fatal编程技术网

Javascript 我不懂数学

Javascript 我不懂数学,javascript,ruby,math,Javascript,Ruby,Math,有人能告诉我为什么在Javascript中,这是由Math.pow(10,12)或10000000000解决的,而不是Math.pow(10,9)或1000000000。解决方案在ruby中非常清晰,而在JS中却非常混乱。我的Js解决方案: var gigDate = Math.pow(10, 12); function Gigasecond(dateIn) { this.dateIn = dateIn }; Gigasecond.prototype.date = function(){

有人能告诉我为什么在Javascript中,这是由Math.pow(10,12)或10000000000解决的,而不是Math.pow(10,9)或1000000000。解决方案在ruby中非常清晰,而在JS中却非常混乱。我的Js解决方案:

var gigDate = Math.pow(10, 12);

function Gigasecond(dateIn) {
  this.dateIn = dateIn
};

Gigasecond.prototype.date = function(){
  return new Date(this.dateIn.getTime() + gigDate);
};  

module.exports = Gigasecond;
我的ruby代码:

class Gigasecond
  VERSION = 1
  def self.from(date)
    date + (10**9)
  end
end

也许读一读这些精美的手册会有所帮助。在JavaScript中:

Date.prototype.getTime()
[…]
返回值
表示1970年1月1日00:00:00 UTC和给定日期之间经过的毫秒数

但在Ruby中,在RHS上:

时间+数字→ 时间
加法-向时间添加一些秒数(可能是小数),并将该值作为新的时间对象返回

这就是你的不同之处


不同的语言,标准库中的不同接口,非常简单。

您能更好地解释一下。。。你想做什么?谢谢你-我终于到了那里,但确实让人困惑!谢谢你的帮助。