Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.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
JavaScript模板式语句 我是一个C++开发者,我想掌握JavaScript。我在JavaScript中遇到了一个语法,我找不到任何相关文档 与C++中的模板相同。下面是我从阅读RxJs教程中得到的一个示例 const subject = new Subject<number>(); const subject=new subject();_Javascript_Typescript_Flowtype - Fatal编程技术网

JavaScript模板式语句 我是一个C++开发者,我想掌握JavaScript。我在JavaScript中遇到了一个语法,我找不到任何相关文档 与C++中的模板相同。下面是我从阅读RxJs教程中得到的一个示例 const subject = new Subject<number>(); const subject=new subject();

JavaScript模板式语句 我是一个C++开发者,我想掌握JavaScript。我在JavaScript中遇到了一个语法,我找不到任何相关文档 与C++中的模板相同。下面是我从阅读RxJs教程中得到的一个示例 const subject = new Subject<number>(); const subject=new subject();,javascript,typescript,flowtype,Javascript,Typescript,Flowtype,有人能给我解释一下JavaScript语言的什么特性吗?在C++中,“主体”将是模板类,“数字”是类型参数。 如果我在谷歌上搜索“JavaScript模板”,那么会出现其他东西,比如JavaScript模板字符串 顺便说一句,我发现JavaScript很难掌握。我目前正在读一本书《雄辩的JavaScript》,我在那本书中找不到上面提到的语法。有人能给我推荐一些更好的JavaScript学习材料吗。这不完全是JavaScript,这是TypeScript,你看到的是一个,仅是TS的一个特性。简言

有人能给我解释一下JavaScript语言的什么特性吗?在C++中,“主体”将是模板类,“数字”是类型参数。

如果我在谷歌上搜索“JavaScript模板”,那么会出现其他东西,比如JavaScript模板字符串


顺便说一句,我发现JavaScript很难掌握。我目前正在读一本书《雄辩的JavaScript》,我在那本书中找不到上面提到的语法。有人能给我推荐一些更好的JavaScript学习材料吗。

这不完全是JavaScript,这是TypeScript,你看到的是一个,仅是TS的一个特性。简言之(因为这里有很多要揭露的东西),JS没有被输入

class Subject {
  constructor() {
    this.foo = null;
  }
}

const subject = new Subject();
subject.foo = 'foo'; // ok
subject.foo = 42; // ok
TS是JavaScript的超集,允许键入以在编译时捕获潜在错误:

class Subject {
  foo: number;
  constructor() {
    this.foo = 42;
  }
}

const subject = new Subject();
subject.foo = 'foo'; // invalid TS, because subject.foo must be a number, not a string
TS泛型允许以更灵活和可重用的方式定义类型:

class Subject<T> {
  foo: T;
  constructor() {
    this.foo = null;
  }
}

const subject = new Subject<number>();
subject.foo = 42; // ok, because 42 is a number
subject.foo = 'foo'; // not ok, 'foo' is a string
const anotherSubject = new Subject<string>();
subject.foo = 'foo'; // ok
课程主题{
foo:T;
构造函数(){
this.foo=null;
}
}
常量主题=新主题();
subject.foo=42;//好的,因为42是一个数字
subject.foo='foo';//不好,“foo”是一个字符串
const anotherSubject=新主题();
subject.foo='foo';//好啊

看起来像是TypeScript,而不是JavaScript。尖括号语法是一种通用语法。是的,这是TypeScript,一个Javascript超集(?),数字将是类型谢谢你的回答。我从RxJs那里得到了上面的代码。我想,RxJs中的Js意味着JavaScript。以下是链接:.@RichardT TypeScript编译为JavaScript。他们的代码示例是TS,它们被编译为JS,以便在浏览器中执行。TS是JS语法的超集,它为您提供了一个类型系统。我的观点(不是很有价值),如果您想要掌握JavaScript,请坚持使用普通的JavaScript(就像那本书教您的那样,它实际上非常好),不要跳入React、Angular、RxJS、TypeScript等库或框架,等等,直到你明白为什么需要使用它们。它们中的大多数都试图解决JavaScript在web浏览器中运行时所特有的缺陷或问题。