gpt4 book ai didi

javascript - javascript : 'sth'++new Date 中的奇怪语法

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:05:14 25 4
gpt4 key购买 nike

我正在阅读一个 jquery 插件,发现这个有趣的语法:

'sth'+ +new Date

它创建一个数字字符串,作者将其用作唯一 ID:sth1237004731731

我很好奇它是什么样的语法,是否有关于它的阅读 Material ?谢谢!

最佳答案

它使用 JavaScript 类型强制的一些副作用来构建唯一标识符(可能是针对元素)。令人困惑的部分是 +new Date。此处,new Date(或 new Date())返回一个 Date 对象。但是在这个前面放一个+或者一个-会强制JS解释器把这个值强制转换为一个Number对象,而JS的做法Date > Number 是通过返回时间戳(或getTime())。

所以这段代码可以像这样以不同的方式表达:

var date = new Date(), // "Mon May 14 2012 10:03:58 GMT-0400 (EST)"
timestamp = date.getTime(), // 1337004238612
identifierString = "sth" + timestamp.toString();

你可能会合理地声称没有必要这么冗长,所以我个人可能会这样写:

var identifier = "sth" + (new Date()).getTime();

但是,如果您预计有人可能需要维护您的代码,请避免像您的示例那样编写代码。如果它阻止了你前进,它可能会阻止很多人。编码风格不仅仅是向解释器表达意图,而是向人类开发人员表达意图。如果代码在浏览器中运行正常,但在大多数有经验的开发人员的头脑中出现语法错误而失败,那么您做错了,简单明了。

关于javascript - javascript : 'sth'++new Date 中的奇怪语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10584803/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com