Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Date 日期类型?_Date_Typescript - Fatal编程技术网

Date 日期类型?

Date 日期类型?,date,typescript,Date,Typescript,如何用打字脚本表示日期?日期不是对象,所以我是否使用any或object?似乎有一种“正确”的方法: let myDate: any = new Date(); 我在谷歌上找不到太多,尽管这是一个非常简单的问题。答案非常简单,类型是Date: const d: Date = new Date(); // but the type can also be inferred from "new Date()" already 它与其他所有对象实例相同:)每个类或接口都可以用作TypeScript

如何用打字脚本表示日期?日期不是对象,所以我是否使用
any
object
?似乎有一种“正确”的方法:

let myDate: any = new Date();

我在谷歌上找不到太多,尽管这是一个非常简单的问题。

答案非常简单,类型是
Date

const d: Date = new Date(); // but the type can also be inferred from "new Date()" already

它与其他所有对象实例相同:)

每个类或接口都可以用作TypeScript中的类型

 const date = new Date();
将已经知道
date
类型定义,因为
date
是DateConstructor接口引用的内部TypeScript对象

对于您使用的构造函数,它定义为:

interface DateConstructor {
    new(): Date;
    ...
}
要使其更明确,可以使用:

 const date: Date = new Date();
但是您可能缺少类型定义,我的示例中的日期来自ES6库,在我的
tsconfig.json
中,我定义了:

"compilerOptions": {
    "target": "ES6",
    "lib": [
        "es6",
        "dom"
    ],
您可以调整这些设置,以针对您想要的JavaScript版本


顺便说一句,日期是一个接口,来自:


Typescript可以识别开箱即用的日期接口,就像您使用数字、字符串或自定义类型一样。所以只要使用:

myDate : Date;

JS类型在TS中工作。您可以使用接口和类作为类型。OP中引用的包含日期和基本类型的
类型集的名称是什么?我正在为扩展方法命名一个模块。@t tugates您的意思是例如
string | number | boolean | null | undefined | symbol | Date
?你可以用a来避免重复。哦,不。不确定它的范围。。但smth大致类似于.Net
system
类型。看见还有一个更简洁、更广泛使用的名称吗?@ttugates将基本类型和日期对象分组在一起对我来说似乎相当随意。我不认为JavaScript中有一个广泛使用的名称。另外,原始问题与后续问题无关。你应该问一个新的:“这和其他所有对象实例一样:)”这不完全正确<代码>字符串
数字
布尔值
都是Typescript中的所有用户小写类型,因此人们可以合理地预期
日期
类型存在,但在尝试使用时会出错。(至少,这就是我来到这一页的原因)新日期()已经与现在或当前日期相同。不需要声明已经初始化的对象。
myDate : Date;