javascript - 在 Safari 中解析时日期显示为空

标签 javascript angularjs safari

我在 Safari 浏览器中格式化日期时遇到问题。请在下面找到详细信息:

value = "2018-02-06";
var tempDate = {value: new Date(value.toString().replace('-','/')) };

tempDate 在 Safari 中被设置为 null,但在其他浏览器(如 Chrome 和 IE)中则没有。你能告诉我这里有什么问题吗?

最佳答案

您只更换了一个-,而不是全部。使用replace(/-/g,'/');替换所有的-

Read in docs

substr (pattern) A String that is to be replaced by newSubStr. It is treated as a verbatim string and is not interpreted as a regular expression. Only the first occurrence will be replaced.

var value = "2018-02-06";
value = value.replace(/-/g,'/');
var tempDate = {value: new Date(value) };
console.log(tempDate);

你的代码只替换第一个-,检查

value = "2018-02-06";
console.log(value.toString().replace('-','/'));

.toString() 将其转换为字符串。如果它已经是字符串,则无需使用它。

关于javascript - 在 Safari 中解析时日期显示为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48639802/

相关文章:

angularjs - 在angularjs中保持导航的 bool 切换状态

javascript - 为什么我的 switch 语句参数需要 boolean 值?

javascript - 更改 GET 请求后显示的 URL

angularjs - 如何获取 Controller 中数组项的索引位置并在angularjs中传递值

node.js - Yeoman 构建的 Angular 应用程序未将 Bootstrap 字体部署到 Heroku

javascript - 背面可见性在 safari 中不起作用

iOS 9 `-webkit-overflow-scrolling:touch` 和 `overflow: scroll` 破坏滚动功能

html - CSS 代码帮助居中图像,但它以某种方式恢复到当前编码的左侧

javascript - 如何更改 footable 中的分页文本或符号?

javascript - Backbone 集合 url 未定义