javascript与typescript

以下是为您整理出来关于【javascript与typescript】合集内容,如果觉得还不错,请帮忙转发推荐。

【javascript与typescript】技术教程文章

javascript – 为什么TypeScript使用对象属性赋值作为对象键和变量赋值作为函数参数?【代码】

在标题为“Compile an enum in TypeScript”的问题的accepted answer中,出现以下TypeScript:enum Fruit {APPLE, ORANGE};显示编译为此JavaScript:var Fruit; (function (Fruit) {Fruit[Fruit["APPLE"] = 0] = "APPLE";Fruit[Fruit["ORANGE"] = 1] = "ORANGE"; })(Fruit || (Fruit = {}));在第3行和第4行,对象属性赋值被用作对象键:Fruit[Fruit["APPLE"] = 0] = "APPLE"; Fruit[Fruit["ORANGE"] = 1] = "ORANGE";在第5行,变量赋值...

javascript – 为什么TypeScript需要“this.”前缀为“内部”模块?【代码】

在TypeScript中定义模块有两种方法: “单身人士”的生活方式:import app = require("durandal/app"); import ko = require("knockout");export var name = ko.observable();export function sayHello() {app.showMessage('Hello ' + name() + '! Nice to meet you.', 'Greetings'); }“瞬态”生活方式:import app = require("durandal/app"); import ko = require("knockout");class AnythingYouLike {name = ko.observable();s...

javascript – Typescript对象文字“this”关键字【代码】

在对象文字中的函数内使用“this”时的预期行为是什么? 例如,假设我有一个类型foo,它只有一个名为“bar”的函数,而不是其他属性.但是在fooObj.bar方法中,我能够访问this.baz(其中“baz”不是“foo”类型的属性)我没有看到错误.不应该打字稿错误,因为fooObj上没有“baz”吗?type foo = {bar(): void; } var fooObj: foo = {bar: () => {// TS does not error out when I access this.bazconsole.log(this.baz);} } 解决方法:你正在...

javascript – Typescript – 混合类型【代码】

我在Typescript手册中看到了这个例子:interface Counter {(start: number): string;interval: number;reset(): void; }var c: Counter; c(10); c.reset(); c.interval = 5.0;但是当我尝试做c(10);或者设置c.interval = 5.0我收到错误 – 无法设置undefined的属性’interval’ 我知道我能做到:var c: Counter; c = function(s: number){return "'" + s + "'"; }缺少什么 – (或者这是一个不完整的例子)? 更新: There is a simil...

javascript – Typescript导入node_modules与ECMAscript 6语法【代码】

参见英文答案 > New es6 syntax for importing commonjs / amd modules i.e. `import foo = require(‘foo’)` 6个我从npm安装了库lodash,现在我想将它导入我的文件,如下所示:import _ from 'lodash';但我得到这个错误:Error TS1192: Module ‘”lodash”‘ has no default export.为什么我会收到此错误?以及如何使用ECMAscript6的新导入语法导入不是.ts文件的node_modules?解决方法:以下两...

了解Javascript / Typescript中的findIndex【代码】

我正在研究一段JS代码.在一个教程中,我发现了一段我不理解的代码:const position = this.quotes.findIndex((quoteEl: Quote) => {return quoteEl.id == quote.id; });我认为编写代码的人在这一行中填充了许多不同的部分.有人可以帮助我把它变成一个更“易于理解”的形式吗? 例如,findIndex方法的参数可能写在一个单独的函数中,对吧? 谢谢,本杰明解决方法:findIndex使用数组的每个元素调用传递的函数,并返回返回true的第一个元素...

javascript – Typescript – 将命名空间导入另一个命名空间【代码】

我想知道是否可以从一个typescript .d.ts文件导出命名空间,然后将该命名空间导入到另一个.d.ts文件中,在该文件中,它在命名空间内使用. 例: namespace_export.d.tsexport namespace Foo {interface foo {prop1: string;} }types.d.tsimport { Foo } from './namespace_export'export namespace Types {Foo // <-- This doesn't work but is what I would likeinterface Bar {prop2: string} }testfile.tsimport { Types } from './...

javascript – 在Typescript中为`this`关键字键入注释【代码】

我有一个独立的函数,它意味着使用Function.prototype.call提供的上下文. 例如:function foo () {return this.bar; }> foo.call({bar: "baz"}) baz有没有办法在此场景中为this关键字提供Typescript类型注释?解决方法:在我看来,它有点难看. 首先,您可以使用特殊的this parameter语法来标识您期望的对象类型:function foo (this: {bar: string}) {return this.bar; // no more error }如果直接调用它会有帮助:foo(); // error, th...

javascript – Typescript:对象到类【代码】

假设我有一个C类和一个Object O实例(来自JSON).class C {str:string;num:number; }var o = JSON.parse ("{\"num\":123, \"str\":\"abc\"}");有没有办法我可以用o分配/初始化一个C的实例,它检查未定义的值以及在复制构造函数/函数中我自己做的类型? 如果值缺失/未定义或类型不匹配,我想得到错误或异常. 谢谢!解决方法:您可以使用Object.assign:class C {str:string;num:number; } var o = JSON.parse("{\"num\":123, \"str\":\"a...

javascript – Typescript TypeError:… toDateString不是一个函数【代码】

我是打字稿的新手,这可能是非常微不足道的.请帮忙. 我试图从typescript Date变量中提取分钟和秒.我有一个变量时间戳声明为Date.但是当我尝试在其上使用函数如toDateString()或getMinutes()或getTime()时,我得到上述错误,说明TypeError:timestamp.getMinutes()不是函数. 谢谢.解决方法:您的时间戳可能不是日期,只是代表number of milliseconds since the Unix epoch的数字. 您需要做的就是将时间戳转换为日期,如下所示:let curren...