我正在研究TypeScript和C#中的代码约定,我们已经找到了在C#中使用string.Empty而不是""的规则。
C#示例:
doAction("");
doAction(string.Empty); // we chose to use this as a convention.
TypeScript:
// only way to do it that I know of.
doAction("");
现在我的问题是,有没有办法在TypeScript中保持这个规则的一致性,或者这个规则是特定于语言的?
你们中有谁有关于如何在TypeSc
在Python中,您可以这样做
>>> a = ('a', 'b')
>>> b = ('a', 'b')
>>> a == b
True
但是在Typescript中
type test = [string, string];
var data1: test = ['a', 'b'];
var data2: test = ['a', 'b'];
console.log(data
我目前正在学习TypeScript,并试图在Codewar上解决这个问题。我能够在JavaScript中解决它,但是当我尝试在TypeScript中解决它时,我得到了一个错误,解释如下。我使用了与我的JavaScript答案相同的方法来回答TypeScript版本。
问题是:给定一个数字,我将返回最大数目。因此,如果输入213,就应该返回312,如下所示:
maxNumber (213) ==> return (321)
这是我为JavaScript提出的解决方案。
function maxNumber(number) {
var num = String(numb
我的问题很简短。我是TypeScript的新手,到处找了找,但还没有找到答案。
我用C#写了这段代码
private bool MaskValidateChar(KeyPressEventArgs e, int index)
{
string c = e.KeyChar.ToString();
if (Char.IsUpper(c[0])) //Need to this with TypeScript :-\
{
//Do Something....
}
}
当我将上面的代码转换为类型脚本时,我可以简单地编写类似于if (c[0] == c[0]
在尝试对数值枚举进行比较时,我注意到一个错误,其中枚举值被转换为字符串类型。这是一种预期的行为吗?
enum Test {
a = 0,
b = 1
}
console.log(Test.a === Test[0]);
// ^ This condition will always return 'false' since the types 'Test' and 'string' have no overlap.(2367)
TypeScript版本:v4.6.4
在TypeScript中,我试图使用for (let x in obj)循环,但是TypeScript编译器没有正确识别x的类型.它总是假设它是string类型的。
在下面的示例中,正确地检测到obj循环外的for类型。TypeScript编译器将其识别为number。但是,当obj应该是number时,for循环中的string就会被识别为string。
let myObj: { [key: number]: number } = { 0: 43, 5: 23 };
let obj = myObj[0]; // let obj: number
for (let obj in myObj)
instanceof Date === true似乎不满足TypeScript 3.4.5的基于控制流的类型分析。在下面的代码中,TypeScript会抱怨我返回的值不是日期,即使在我检查它确实是日期之后也是如此。 async function testFunction(): Promise<Date> {
const {testDate}: {testDate: Date | string} = await browser.storage.local.get({testDate: new Date()});
if (testDate instanceof Da
我使用的是Typescript 3.0.1。在下面的代码中,为什么第7行没有编译器错误?我以前曾经有过这种行为;它是从Typescript中删除的,还是有一些奇怪的回归?
type A = {type :"a"}
type B = {type :"b"}
type Any = A | B
function get<T extends Any>(x: T["type"]): T|undefined {
switch (x) {
case "x": return undefined
我配置的类型记录输出程序不起作用。我的@角组件没有加载。我得到了一个错误: ZoneAwareError:
"Error: core_1.Component is not a function
Evaluating http://127.0.0.1:64223/app/app.component.ts
Evaluating http://127.0.0.1:64223/app/app.module.ts
Evaluating http://127.0.0.1:64223/app/main.ts
Loading app
at LoaderError__Check_
以下代码曾与TypeScript 2.0配合使用:
function enumDemo() {
enum temperature{
cold,
hot
};
let temp = temperature.cold;
switch (temp) {
case temperature.cold:
console.log("Brrr...");
break;
case temperature.hot:
console.log("yikes!"
我有一个演示
这是使用typescript的React中的一个简单的待办事项应用程序。
我正在尝试定义typescript中的道具。
我在Todo组件中有一个接口,用于传入的props
如果我试图访问Todo组件中的文本,我得到一个错误消息:
Property 'text' does not exist on type 'string'.
如何使用typescript正确定义道具
我使用的是TypeScript版本4.7.3。我使用的是与数字相等的比较,而string.Below是代码
let a:number = 10;
let result = a=='10';
我得到以下编译错误。
此条件将始终返回'false‘,因为类型'number’和'string‘没有overlap.ts(2367)