Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/17.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.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
Typescript 如何在字体位置使用符号?_Typescript - Fatal编程技术网

Typescript 如何在字体位置使用符号?

Typescript 如何在字体位置使用符号?,typescript,Typescript,我不明白官方文件中关于这个问题的以下句子 要使此模式正常工作,重要的是通过 导入仅用于类型位置(即从不在位置 这将被发送到JavaScript中) 问题1: 什么是“类型位置”?如何在类型位置中使用变量?那么什么是非类型位置 问题2: 什么是“嵌入Javascript”?你能举个例子吗?我没能举例说明这个概念 Typescript是一种编译成JavaScript的语言,它使用类型注释来帮助编译器进行类型一致性的静态分析 因此,从概念上讲,Typescript代码分为两部分:JavaScript中

我不明白官方文件中关于这个问题的以下句子

要使此模式正常工作,重要的是通过 导入仅用于类型位置(即从不在位置 这将被发送到JavaScript中)

问题1:

什么是“类型位置”?如何在类型位置中使用变量?那么什么是非类型位置

问题2:


什么是“嵌入Javascript”?你能举个例子吗?我没能举例说明这个概念

Typescript是一种编译成JavaScript的语言,它使用类型注释来帮助编译器进行类型一致性的静态分析

因此,从概念上讲,Typescript代码分为两部分:JavaScript中不存在的类型注释和传输代码,传输代码以某种形式存在于传输代码中

例如,下面是一个愚蠢的Typescript程序:

interface Foo {
  myNumber: number;
  myString: string;
}

function aFunc(foo: Foo) {
  return foo.myString;
}

let foo: Foo = {
  myNumber: 9,
  myString: 'Hola!'
};
通过
tsc
运行它,您可以得到:

function aFunc(foo) {
    return foo.myString;
}
var foo = {
    myNumber: 9,
    myString: 'Hola!'
};
console.log(aFunc(foo));
您可以看到,接口声明和剩余的类型注释在编译代码中不存在,而其他部分基本上是按原样存在的

删除的代码部分位于类型位置,其余代码位于代码位置。这回答了你的第一个问题


为了明确回答您的第二个问题,在*.ts文件上运行
tsc
将生成一个*.js文件,如上面的示例所示。

Nice:“我未能实例化这个概念。”我必须自己使用它。Type position是变量或使用类型声明的函数,例如数字、字符串或自定义接口类型。然后,所有内容都被发送到javascript中。为什么它说“永远不要在一个会被发送到JavaScript中的位置”?并不是所有的东西都被发送到JavaScript中。处于类型位置的任何内容都不会发出。我明白了,只发出代码位置。类型化变量被编译为javascript,而不是以书面形式直接发送到javascript。