⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 date-delay.js.svn-base

📁 Google浏览器V8内核代码
💻 SVN-BASE
📖 第 1 页 / 共 2 页
字号:
function GetUTCDateFrom(aDate) {  var t = GetTimeFrom(aDate);  if ($isNaN(t)) return t;  return DateFromTime(t);};%FunctionSetPrototype($Date, new $Date($NaN));var WeekDays = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];var Months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];function TwoDigitString(value) {  return value < 10 ? "0" + value : "" + value;};function DateString(time) {  var YMD = FromJulianDay(Day(time) + kDayZeroInJulianDay);  return WeekDays[WeekDay(time)] + ' '      + Months[YMD.month] + ' '      + TwoDigitString(YMD.date) + ' '      + YMD.year;};function TimeString(time) {  return TwoDigitString(HourFromTime(time)) + ':'      + TwoDigitString(MinFromTime(time)) + ':'      + TwoDigitString(SecFromTime(time));};function LocalTimezoneString(time) {  var timezoneOffset = (LocalTimeOffset() + DaylightSavingsOffset(time)) / msPerMinute;  var sign = (timezoneOffset >= 0) ? 1 : -1;  var hours = $floor((sign * timezoneOffset)/60);  var min   = $floor((sign * timezoneOffset)%60);  var gmt = ' GMT' + ((sign == 1) ? '+' : '-') + TwoDigitString(hours) + TwoDigitString(min);  return gmt + ' (' +  LocalTimezone(time) + ')';};function DatePrintString(time) {  return DateString(time) + ' ' + TimeString(time);};// -------------------------------------------------------------------// ECMA 262 - 15.9.4.2function DateParse(string) {  var arr = %DateParseString(ToString(string));  if (IS_NULL(arr)) return $NaN;  var day = MakeDay(arr[0], arr[1], arr[2]);  var time = MakeTime(arr[3], arr[4], arr[5], 0);  var date = MakeDate(day, time);    if (IS_NULL(arr[6])) {    return TimeClip(UTC(date));  } else {    return TimeClip(date - arr[6] * 1000);  }};// ECMA 262 - 15.9.4.3function DateUTC(year, month, date, hours, minutes, seconds, ms) {  year = ToNumber(year);  month = ToNumber(month);  var argc = %_ArgumentsLength();  date = argc > 2 ? ToNumber(date) : 1;  hours = argc > 3 ? ToNumber(hours) : 0;  minutes = argc > 4 ? ToNumber(minutes) : 0;  seconds = argc > 5 ? ToNumber(seconds) : 0;  ms = argc > 6 ? ToNumber(ms) : 0;  year = (!$isNaN(year) && 0 <= TO_INTEGER(year) && TO_INTEGER(year) <= 99)      ? 1900 + TO_INTEGER(year) : year;  var day = MakeDay(year, month, date);  var time = MakeTime(hours, minutes, seconds, ms);  return %_SetValueOf(this, TimeClip(MakeDate(day, time)));};// Mozilla-specific extension. Returns the number of milliseconds// elapsed since 1 January 1970 00:00:00 UTC.function DateNow() {  return %DateCurrentTime();};// ECMA 262 - 15.9.5.2function DateToString() {  var t = GetTimeFrom(this);  if ($isNaN(t)) return kInvalidDate;  return DatePrintString(LocalTime(t)) + LocalTimezoneString(t);};// ECMA 262 - 15.9.5.3function DateToDateString() {  var t = GetTimeFrom(this);  if ($isNaN(t)) return kInvalidDate;  return DateString(LocalTime(t));};// ECMA 262 - 15.9.5.4function DateToTimeString() {  var t = GetTimeFrom(this);  if ($isNaN(t)) return kInvalidDate;  var lt = LocalTime(t);  return TimeString(lt) + LocalTimezoneString(lt);};// ECMA 262 - 15.9.5.7function DateToLocaleTimeString() {  var t = GetTimeFrom(this);  if ($isNaN(t)) return kInvalidDate;  var lt = LocalTime(t);  return TimeString(lt);};// ECMA 262 - 15.9.5.9function DateGetTime() {  return GetTimeFrom(this);}// ECMA 262 - 15.9.5.10function DateGetFullYear() {  return GetFullYearFrom(this)};// ECMA 262 - 15.9.5.11function DateGetUTCFullYear() {  return GetUTCFullYearFrom(this)};// ECMA 262 - 15.9.5.12function DateGetMonth() {  return GetMonthFrom(this);};// ECMA 262 - 15.9.5.13function DateGetUTCMonth() {  return GetUTCMonthFrom(this);};// ECMA 262 - 15.9.5.14function DateGetDate() {  return GetDateFrom(this);};// ECMA 262 - 15.9.5.15function DateGetUTCDate() {  return GetUTCDateFrom(this);};// ECMA 262 - 15.9.5.16function DateGetDay() {  var t = GetTimeFrom(this);  if ($isNaN(t)) return t;  return WeekDay(LocalTime(t));};// ECMA 262 - 15.9.5.17function DateGetUTCDay() {  var t = GetTimeFrom(this);  if ($isNaN(t)) return t;  return WeekDay(t);};// ECMA 262 - 15.9.5.18function DateGetHours() {  return GetHoursFrom(this);};// ECMA 262 - 15.9.5.19function DateGetUTCHours() {  return GetUTCHoursFrom(this);};// ECMA 262 - 15.9.5.20function DateGetMinutes() {  return GetMinutesFrom(this);};// ECMA 262 - 15.9.5.21function DateGetUTCMinutes() {  return GetUTCMinutesFrom(this);};// ECMA 262 - 15.9.5.22function DateGetSeconds() {  return GetSecondsFrom(this);};// ECMA 262 - 15.9.5.23function DateGetUTCSeconds() {  return GetUTCSecondsFrom(this);};// ECMA 262 - 15.9.5.24function DateGetMilliseconds() {  return GetMillisecondsFrom(this);};// ECMA 262 - 15.9.5.25function DateGetUTCMilliseconds() {  return GetUTCMillisecondsFrom(this);};// ECMA 262 - 15.9.5.26function DateGetTimezoneOffset() {  var t = GetTimeFrom(this);  if ($isNaN(t)) return t;  return (t - LocalTime(t)) / msPerMinute;};// ECMA 262 - 15.9.5.27function DateSetTime(ms) {  if (!IS_DATE(this)) throw new $TypeError('this is not a Date object.');  return %_SetValueOf(this, TimeClip(ToNumber(ms)));};// ECMA 262 - 15.9.5.28function DateSetMilliseconds(ms) {  var t = LocalTime(GetTimeFrom(this));  ms = ToNumber(ms);  var time = MakeTime(HourFromTime(t), MinFromTime(t), SecFromTime(t), ms);  return %_SetValueOf(this, TimeClip(UTC(MakeDate(Day(t), time))));};// ECMA 262 - 15.9.5.29function DateSetUTCMilliseconds(ms) {  var t = GetTimeFrom(this);  ms = ToNumber(ms);  var time = MakeTime(HourFromTime(t), MinFromTime(t), SecFromTime(t), ms);  return %_SetValueOf(this, TimeClip(MakeDate(Day(t), time)));};// ECMA 262 - 15.9.5.30function DateSetSeconds(sec, ms) {  var t = LocalTime(GetTimeFrom(this));  sec = ToNumber(sec);  ms = %_ArgumentsLength() < 2 ? GetMillisecondsFrom(this) : ToNumber(ms);  var time = MakeTime(HourFromTime(t), MinFromTime(t), sec, ms);  return %_SetValueOf(this, TimeClip(UTC(MakeDate(Day(t), time))));};// ECMA 262 - 15.9.5.31function DateSetUTCSeconds(sec, ms) {  var t = GetTimeFrom(this);  sec = ToNumber(sec);  ms = %_ArgumentsLength() < 2 ? GetUTCMillisecondsFrom(this) : ToNumber(ms);  var time = MakeTime(HourFromTime(t), MinFromTime(t), sec, ms);  return %_SetValueOf(this, TimeClip(MakeDate(Day(t), time)));};// ECMA 262 - 15.9.5.33function DateSetMinutes(min, sec, ms) {  var t = LocalTime(GetTimeFrom(this));  min = ToNumber(min);  var argc = %_ArgumentsLength();  sec = argc < 2 ? GetSecondsFrom(this) : ToNumber(sec);  ms = argc < 3 ? GetMillisecondsFrom(this) : ToNumber(ms);  var time = MakeTime(HourFromTime(t), min, sec, ms);  return %_SetValueOf(this, TimeClip(UTC(MakeDate(Day(t), time))));};// ECMA 262 - 15.9.5.34function DateSetUTCMinutes(min, sec, ms) {  var t = GetTimeFrom(this);  min = ToNumber(min);  var argc = %_ArgumentsLength();  sec = argc < 2 ? GetUTCSecondsFrom(this) : ToNumber(sec);  ms = argc < 3 ? GetUTCMillisecondsFrom(this) : ToNumber(ms);  var time = MakeTime(HourFromTime(t), min, sec, ms);  return %_SetValueOf(this, TimeClip(MakeDate(Day(t), time)));};// ECMA 262 - 15.9.5.35function DateSetHours(hour, min, sec, ms) {  var t = LocalTime(GetTimeFrom(this));  hour = ToNumber(hour);  var argc = %_ArgumentsLength();  min = argc < 2 ? GetMinutesFrom(this) : ToNumber(min);  sec = argc < 3 ? GetSecondsFrom(this) : ToNumber(sec);  ms = argc < 4 ? GetMillisecondsFrom(this) : ToNumber(ms);  var time = MakeTime(hour, min, sec, ms);  return %_SetValueOf(this, TimeClip(UTC(MakeDate(Day(t), time))));};// ECMA 262 - 15.9.5.34function DateSetUTCHours(hour, min, sec, ms) {  var t = GetTimeFrom(this);  hour = ToNumber(hour);  var argc = %_ArgumentsLength();  min = argc < 2 ? GetUTCMinutesFrom(this) : ToNumber(min);  sec = argc < 3 ? GetUTCSecondsFrom(this) : ToNumber(sec);  ms = argc < 4 ? GetUTCMillisecondsFrom(this) : ToNumber(ms);  var time = MakeTime(hour, min, sec, ms);  return %_SetValueOf(this, TimeClip(MakeDate(Day(t), time)));};// ECMA 262 - 15.9.5.36function DateSetDate(date) {  var t = LocalTime(GetTimeFrom(this));  date = ToNumber(date);  var day = MakeDay(YearFromTime(t), MonthFromTime(t), date);  return %_SetValueOf(this, TimeClip(UTC(MakeDate(day, TimeWithinDay(t)))));};// ECMA 262 - 15.9.5.37function DateSetUTCDate(date) {  var t = GetTimeFrom(this);  date = ToNumber(date);  var day = MakeDay(YearFromTime(t), MonthFromTime(t), date);  return %_SetValueOf(this, TimeClip(MakeDate(day, TimeWithinDay(t))));};// ECMA 262 - 15.9.5.38function DateSetMonth(month, date) {  var t = LocalTime(GetTimeFrom(this));  month = ToNumber(month);  date = %_ArgumentsLength() < 2 ? GetDateFrom(this) : ToNumber(date);  var day = MakeDay(YearFromTime(t), month, date);  return %_SetValueOf(this, TimeClip(UTC(MakeDate(day, TimeWithinDay(t)))));};// ECMA 262 - 15.9.5.39function DateSetUTCMonth(month, date) {  var t = GetTimeFrom(this);  month = ToNumber(month);  date = %_ArgumentsLength() < 2 ? GetUTCDateFrom(this) : ToNumber(date);  var day = MakeDay(YearFromTime(t), month, date);  return %_SetValueOf(this, TimeClip(MakeDate(day, TimeWithinDay(t))));};// ECMA 262 - 15.9.5.40function DateSetFullYear(year, month, date) {  var t = GetTimeFrom(this);  t = $isNaN(t) ? 0 : LocalTime(t);  year = ToNumber(year);  var argc = %_ArgumentsLength();  month = argc < 2 ? MonthFromTime(t) : ToNumber(month);  date = argc < 3 ? DateFromTime(t) : ToNumber(date);  var day = MakeDay(year, month, date);  return %_SetValueOf(this, TimeClip(UTC(MakeDate(day, TimeWithinDay(t)))));};// ECMA 262 - 15.9.5.41function DateSetUTCFullYear(year, month, date) {  var t = GetTimeFrom(this);  if ($isNaN(t)) t = 0;  var argc = %_ArgumentsLength();  year = ToNumber(year);  month = argc < 2 ? MonthFromTime(t) : ToNumber(month);  date = argc < 3 ? DateFromTime(t) : ToNumber(date);  var day = MakeDay(year, month, date);  return %_SetValueOf(this, TimeClip(MakeDate(day, TimeWithinDay(t))));};// ECMA 262 - 15.9.5.42function DateToUTCString() {  var t = GetTimeFrom(this);  if ($isNaN(t)) return kInvalidDate;  // Return UTC string of the form: Sat, 31 Jan 1970 23:00:00 GMT  return WeekDays[WeekDay(t)] + ', '      + TwoDigitString(DateFromTime(t)) + ' '      + Months[MonthFromTime(t)] + ' '      + YearFromTime(t) + ' '      + TimeString(t) + ' GMT';};// ECMA 262 - B.2.4function DateGetYear() {  var t = GetTimeFrom(this);  if ($isNaN(t)) return $NaN;  return YearFromTime(LocalTime(t)) - 1900;};// ECMA 262 - B.2.5function DateSetYear(year) {  var t = LocalTime(GetTimeFrom(this));  if ($isNaN(t)) t = 0;  year = ToNumber(year);  if ($isNaN(year)) return %_SetValueOf(this, $NaN);  year = (0 <= TO_INTEGER(year) && TO_INTEGER(year) <= 99)      ? 1900 + TO_INTEGER(year) : year;  var day = MakeDay(year, GetMonthFrom(this), GetDateFrom(this));  return %_SetValueOf(this, TimeClip(UTC(MakeDate(day, TimeWithinDay(t)))));};// -------------------------------------------------------------------function SetupDate() {  // Setup non-enumerable properties of the Date object itself.  InstallProperties($Date, DONT_ENUM, {    UTC: DateUTC,    parse: DateParse,    now: DateNow  });  // Setup non-enumerable properties of the Date prototype object.  InstallProperties($Date.prototype, DONT_ENUM, {    constructor: $Date,    toString: DateToString,    toDateString: DateToDateString,    toTimeString: DateToTimeString,    toLocaleString: DateToString,    toLocaleDateString: DateToDateString,    toLocaleTimeString: DateToLocaleTimeString,    valueOf: DateGetTime,    getTime: DateGetTime,    getFullYear: DateGetFullYear,    getUTCFullYear: DateGetUTCFullYear,    getMonth: DateGetMonth,    getUTCMonth: DateGetUTCMonth,    getDate: DateGetDate,    getUTCDate: DateGetUTCDate,    getDay: DateGetDay,    getUTCDay: DateGetUTCDay,    getHours: DateGetHours,    getUTCHours: DateGetUTCHours,    getMinutes: DateGetMinutes,    getUTCMinutes: DateGetUTCMinutes,    getSeconds: DateGetSeconds,    getUTCSeconds: DateGetUTCSeconds,    getMilliseconds: DateGetMilliseconds,    getUTCMilliseconds: DateGetUTCMilliseconds,    getTimezoneOffset: DateGetTimezoneOffset,    setTime: DateSetTime,    setMilliseconds: DateSetMilliseconds,    setUTCMilliseconds: DateSetUTCMilliseconds,    setSeconds: DateSetSeconds,    setUTCSeconds: DateSetUTCSeconds,    setMinutes: DateSetMinutes,    setUTCMinutes: DateSetUTCMinutes,    setHours: DateSetHours,    setUTCHours: DateSetUTCHours,    setDate: DateSetDate,    setUTCDate: DateSetUTCDate,    setMonth: DateSetMonth,    setUTCMonth: DateSetUTCMonth,    setFullYear: DateSetFullYear,    setUTCFullYear: DateSetUTCFullYear,    toUTCString: DateToUTCString,    toGMTString: DateToUTCString,    getYear: DateGetYear,    setYear: DateSetYear  });};SetupDate();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -