javascript与typescript

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

【javascript与typescript】技术教程文章

javascript – 从typescript接口对象中删除字段【代码】

我得到了一个json响应并将其存储在mongodb中,但是我不需要的字段也进入了数据库,无论如何要剥离不道德的字段?interface Test{name:string }; const temp :Test = JSON.parse('{ "name":"someName","age":20 }') as Test; console.log(temp);输出:{ name: 'someName', age: 20 }解决方法:您可以使用从给定对象中选择某些属性的函数:function pick<T, K extends keyof T>(obj: T, ...keys: K[]): Pick<T, K> {const copy = {} as ...

javascript – Typescript接口实例(对象)的可变性【代码】

我发现接口非常有用,但由于内存问题我需要开始优化我的应用程序,我意识到我并不真正了解它们在内部如何工作. 说我有interface Foo {bar: number }我用这种类型实例化一些变量:let x : Foo = { bar: 2 }Q1:这会创建一个新对象吗? 现在,假设我想改变bar的值.我这样做有两种方式.第一种方式:x = { bar: 5 }Q2:第一种方法是创建一个新对象并替换x引用的旧对象,导致旧对象(bar = 2)最终被垃圾收集? 第二种方式:x.bar = 5问题3:这...

javascript – Typescript:等待所有的承诺【代码】

我的承诺遇到了一个小问题. 这是我的功能:public generateMealPlanForAWeek(myMealProfile: any, totalCalories:number):Promise<any> {return new Promise(resolve => {let mealplan:Array<any> = [];for (let i = 1; i <= 7; i++) {this.generateMealPlanForOneDay(myMealProfile, totalCalories).then(data => {mealplan.push(data); // resolves much later});}resolve(mealplan); // is resolved instant})}我的问题是,“gen...

javascript – TypeScript中包含不同对象的数组【代码】

在从同一个类继承的一个数组中收集各种不同的对象时,如何在TypeScript中设置一个优等的类,以便TypeScript不显示错误? 我正在尝试这样:interface IVehicle{modelName: string }interface ICar extends IVehicle{numberOfDoors: number,isDropTop: boolean }interface IBike extends IVehicle{hasDynamo: boolean }var vehicles: IVehicle[] =[{modelName: "carModelName", // ErrornumberOfDoors: 4,isDropTop: true},{modelName:...

javascript – TypeScript闭包 – 一种“差不多”的解决方案【代码】

我最大的一个关于TypeScript的问题是,它将原型的所有方法(无论访问修饰符)编译. 例class Example {public getString(): string {return "Hello World";}private getNumber(): number {return 123;} }众所周知,访问修饰符仅在编译时检查,因此被发出的JavaScript忽略. JavaScript开发人员学会减轻这种情况的一种方法是使用闭包(好吧,我们知道使用闭包会有性能损失,但我相信有些情况下绝对需要关闭). 例var Example = (function () {f...

如何解决’属性’宽度’在类型’HTMLElement’上不存在.’当使用// @ ts-check在vscode中键入检查Javascript(NOT Typescript)时?【代码】

在view.js文件中:const canvas = document.getElementById('canvas'); ... export {canvas, }; 在main.js文件中:import * as view from '../src/view.js';...xPosition: view.canvas.width / 2,给我’属性’宽度’在类型’HTMLElement’上不存在.类型检查错误. 我不知道如何继续,我对打字稿没有任何了解,而且程序是用javascript编写的.我读过的所有解决方案都需要使用打字稿,这在本例中没用. 我有什么办法可以摆脱这个错误吗? 编...

javascript – 在typescript中使用像angularname()这样的尖括号有什么用【代码】

如果有任何教程可以帮助我,为什么我们使用尖括号<>在类型脚本中,例如我在这里给出了一些代码,我需要解释.export class HomePage {constructor(public navCtrl: NavController) {let a = this.testfunc<boolean>(4);console.log(a);}testfunc<T>(s) {return s;} }谢谢解决方法:这些表示generics.testfunc< T>(s){return s; }表示testfunc接受泛型类型参数T. testfunc< boolean>(4)为该类型参数提供类型参数(boolean).在该示例中,由于...

javascript – 从typescript代码滚动到元素(角度5)【代码】

我在屏幕中间有div. div包含一个提交按钮.当我点击“提交”屏幕位置下降到底部.我试图用window.scrollTo()滚动到元素,但它不起作用.我需要从component.ts做到这一点,我有一个事件,当我按下提交时调用.我将非常感谢你的帮助.解决方法:使用查看孩子的力量@ViewChild('scroll', { read: ElementRef }) public scroll: ElementRef<any>;ngAfterViewChecked() {this.scrollBottom()}public scrollBottom() {this.scroll.nativeElement.s...

javascript – TypeScript – 扩展标准lib Math的类型定义【代码】

我想使用javascript库 seedrandom.js 在一个TypeScript项目中,却无法弄清楚如何为这个lib编写一个类型定义,它使用另一种方法扩展了标准的javascript Math库:Math.seedrandom();解决方法:只需添加到Math界面即可interface Math {seedrandom(seed?: string); }Math.seedrandom();

javascript – TypeScript中c#class virtual member的等价物【代码】

所以在C#中,当我一直在创建模型类和延迟加载时,我做了类似这样的事情:public int? User_ID { get; set; } public int? Dept_ID { get; set; }然后在课堂上再往下走一点,我会像我这样在虚拟中弹出:public virtual User User {get; set;} public virtual Department Dept {get; set;}我怎么在打字稿中这样做?像这样的东西?:User_ID: number; Dept_ID: number; User: User; Dept: Department;我不认为接口是我想要/需要的……但是...