I am using Date.js to support many cultures in my web app. The problem here is that date.js has code like this.
Date.prototype._toString = Date.prototype.toString;
Date.prototype.toString = function () {
//doing something
return this._toString();
}
when I use another culture file, it also contains this definition. so logically my doc has this
//date.js
Date.prototype._toString = Date.prototype.toString;
Date.prototype.toString = function () {
//doing something
return this._toString();
}
//date-fr-FR.js
Date.prototype._toString = Date.prototype.toString;
Date.prototype.toString = function () {
//doing something
return this._toString();
}
I am refering to both date.js and date-fr-FR.js in my web app.
The problem is when I use the toString function var d = new Date().toString(); it throws an Out of stack space msg, because of the recursive calls. Is there any way to cache the
orginal Date object and rest it back, because i don't want to remove date.js from doc
Instead of including both date.js and date-fr-FR.js, you only need to include the fr-FR.js file to change the culture, which you will find in the src/globalization folder in the Datejs-all-Alpha1.zip file. The fr-FR.js file only contains the culture specific data, and it should override what is already included in date.js, without redefining the functionality.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With