关于日期扩展的一个::得到日期年月日等加数字后的日期;这段代码不是很明白???

Date.prototype.dateAdd = function (interval, number) {

var d = this;
var k = { 'y': 'FullYear', 'q': 'Month', 'm': 'Month', 'w': 'Date', 'd': 'Date', 'h': 'Hours', 'n': 'Minutes', 's': 'Seconds', 'ms': 'MilliSeconds' };
var n = { 'q': 3, 'w': 7 };
eval('d.set' + k[interval] + '(d.get' + k[interval] + '()+' + ((n[interval] || 1) * number) + ')');
return d;

}

如上这段扩展代码不是很明白,有人可以给解释一下吗???每一行的意思

阅读 1.6k
1 个回答

eval(string) eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。

d就是new出来的date对象。

整段代码就是个拼写js脚本字符串然后执行。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题