date.toLocaleDateString is not a function
52,491
Solution 1
Date.parse
returns a number. You are looking for new Date
. Or, if time
already is a Date instance, just use time.toLocaleDateString()
(and make sure it really is in every call to the function)!
function formatTime(time, prefix = "") {
return typeof time == "object" ? prefix + time.toLocaleDateString() : "";
}
Solution 2
You can use
new Date(date).toLocaleDateString();
Solution 3
Got this error in a React app, solved it like this:
{ (item.created instanceof Date) ? item.created.toLocaleDateString() : new Date(item.created).toLocaleDateString() }
Author by
Aleksey Kontsevich
About me on LinkedIn: https://www.linkedin.com/in/akontsevich
Updated on April 22, 2021Comments
-
Aleksey Kontsevich about 3 years
Have simple function which returns an error:
ERROR: date.toLocaleDateString is not a function
TypeError: date.toLocaleDateString is not a function at FormatTime (../Src/rootdialog.js:87:58)
Function definition:
function FormatTime(time, prefix = "") { var date = Date.parse(time); return ((typeof time != "undefined") ? prefix + date.toLocaleDateString() : ""); }
Function receives
Date
object as input however even explicit conversion toDate
withDate.parse()
does not help. Using Node.js 8.x. Any solution?P.S. Issue was caused by BotBuilder architecture.