所以,我正在使用TypeScript中的类型推断.我将提供两个在调用时产生相同结果的示例,但是在其中一个示例中,由于"没有最佳常见类型",TypeScript无法推断出类型.
三元运算符的示例
function foo(a: boolean) {
return a ? 4 : true;
}
Run Code Online (Sandbox Code Playgroud)
编译器推断出foo (a: boolean) => number | boolean
非常棒.
if语句的示例
function foo(a: boolean) {
if (a) {
return 4;
} else {
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
在尝试推断返回类型时,编译器会抱怨"没有最佳常见类型".令我困惑的是,如果陈述应该混淆类型推断.怎么会?
据我所知,CSS中的一般兄弟选择器选择一个元素的降序兄弟.
请考虑以下代码:
<head>
<style>
h3 ~ div {
color: #FF00FF;
}
</style>
</head>
<body>
<h3>Header 3</h3>
<div>Sibling divivion</div>
<p>
<p>Nested paragraph</p>
<div>Nested division</div>
</p>
</body>
Run Code Online (Sandbox Code Playgroud)
我希望一般的兄弟选择器能够针对作为div元素的h3的所有降序兄弟.
有人可以解释为什么选择"嵌套分裂"吗?我不认为它是h3的兄弟姐妹?
我想知道当形式参数名称不必匹配时,注释如下函数的类型是什么意思:
let foo: (x:number, y:number) => number = (a:number, b:number) => a+b
Run Code Online (Sandbox Code Playgroud)
我的意思是,是什么意思(x:number, y:number) => number
?我认为如果我可以(number, number) => number
在定义函数类型时编写会更有意义,特别是如果“形式参数名称”无论如何都不必匹配。
什么是我要定义喜欢的名称的原因x
,并y
在功能类型?打字稿不能推断函数类型(a:number, b:number) => number
吗?而且我知道我可以省略显式类型注释,但就我而言,我总是想要显式类型注释。
我有这个简单的查询,希望它是不言自明的。
SELECT ROW_NUMBER() OVER (PARTITION BY Price_Id ORDER BY date DESC) r, * FROM Samples
Run Code Online (Sandbox Code Playgroud)
我的问题是我有超过 80000 条记录,执行该查询需要大约 3 秒。我的问题是我是否可以做些什么来提高性能?
我在想一个索引,并想出了类似的东西
CREATE INDEX IX_Samples_Date ON Samples (Date DESC)
Run Code Online (Sandbox Code Playgroud)
但我不得不承认我以前从未使用过索引,而且我上面的尝试没有奏效。