中华农历论坛知识讨论区历法知识 → [原创]求助:JavaScript中两个浮点数求余数得出的结果也是浮点数吗?


  共有13710人关注过本帖平板打印

主题:[原创]求助:JavaScript中两个浮点数求余数得出的结果也是浮点数吗?

帅哥哟,离线,有人找我吗?
秦汉昌
  1楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
[原创]求助:JavaScript中两个浮点数求余数得出的结果也是浮点数吗?  发帖心情 Post By:2011/2/11 23:07:00

求助:JavaScript中两个浮点数求余数得出的结果也是浮点数吗?

比如,寿星历中的角度化简,如果按照JScript操作指南所讲:两浮点数取余时按四舍五入来运算,那么如下化简就不粗确了

function rad2mrad(v){ //对超过0-2PI的角度转为0-2PI
  v=v % (2*Math.PI);
  if(v<0) return v+2*Math.PI;
  return v;
}

 

还有,有关根据儒略日计算星期几的情况:

 

  return h.substr(h.length-2,2)+':'+m.substr(m.length-2,2)+':'+s.substr(s.length-2,2);
  },
  //星期相关
  Weeks : new Array('日','一','二','三','四','五','六','七'),
  getWeek:function(jd){ return int2(jd+1.5)%7; }, //星期计算
  nnweek:function(y,m,n,w){ //求y年m月的第n个星期w的儒略日数
   var jd = JD.JD(y,m,1.5); //月首儒略日
   var w0 = (jd+1)%7;       //月首的星期
   var r  = jd-w0+7*n+w;    //jd-w0+7*n是和n个星期0,起算下本月第一行的星期日(可能落在上一月)。加w后为第n个星期w
   if(w>=w0) r-=7; //第1个星期w可能落在上个月,造成多算1周,所以考虑减1周
   if(n==5){
    m++; if(m>12) m=1, y++;   //下个月
    if(r>=JD.JD(y,m,1.5)) r-=7; //r跑到下个月则减1周
   }
   return r;
  }
};

 

nnweek  中  return int2(jd+1.5)%7; },  与  nnweek   中  var w0 = (jd+1)%7;       //月首的星期

的代码有差异呢,我想,应该是 两浮点数求余数能得出浮点数的原因吧,求月道星期几的程序中,需浮点数来计算


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部

返回版面帖子列表

[原创]求助:JavaScript中两个浮点数求余数得出的结果也是浮点数吗?








签名