草庐IT

【TypeScript】深入学习TypeScript枚举

全部标签

JavaScript:枚举给定范围内的非 native 对象

假设我想获取window中用户定义的所有变量的列表。换句话说,它们不是浏览器在ECMAScript中创建或定义的属性或对象。例如,假设页面上有这个脚本:window.__$DEBUG=true;varAnalytics=function(){};我希望能够遍历window并获得一个列表,其中包含__$DEBUG及其值,以及Analytics及其值:varnonNatives=(functionnonNative(scope){varresult={};for(varchildinscope){if(!isNative(child)){result[child]=scope[child]

javascript - 如何使用 ember-model 定义枚举

在我的ember-model模型中,我需要从枚举中设置一个String属性。ember-model有可能吗?例如,我想要一个Book模型:App.Book({id:Ember.attr(),title:Ember.attr('String'),author:Ember.attr('String'),status:App.BookStatus});和App.Book.Status作为具有3个可能值的枚举"FREE","BORROW","LOST"并使用它:varmyBook=App.Book.create({title:'myBook',author:'fred',status:App.

javascript - grunt-typescript 不会在指定的 `dest` 中生成 js 文件

我有以下目录结构:root||_package.json|_Gruntfile.js||_javascripts/|_ts/file.ts在Gruntfile中我有这个://ProjectConfiggrunt.initConfig({pkg:grunt.file.readJSON('package.json'),typescript:{base:{src:['./javascripts/ts/*.ts'],dest:'./javascripts/'}}});我希望js文件位于javascripts/目录中。但是,当我运行grunttypescript时,它会创建这个奇怪的目录结构:r

javascript - (TypeScript) 为 Parse SDK(浏览器和 Node )创建类型定义

我正在为ParseJavascriptSDK创建一个Typescript类型定义.它实际上是完整的。该定义适用于Browse和CloudCode,但不适用于Node。在客户端和服务器端javascript中使用Parse浏览示例:varGameScore=Parse.Object.extend("GameScore");Node示例:varParse=require('parse').Parse;varGameScore=Parse.Object.extend("GameScore");Psuedue类型定义declaremoduleParse{interfaceFacebookUti

javascript - 在 TypeScript 中动态返回一个类构造函数

我正在尝试在TypeScript中构建一种机制,以根据表示类名称的字符串参数返回类的新实例。基本上,我正在尝试创建一个工厂,只是我不太清楚如何在TypeScript中执行此操作。在纯JS中,我可以通过将所有类构造函数存储在一个键/值对象中并调用newClassDictionary[className]();来解决这个问题——这不是最可靠的解决方案,但它在这种情况下工作。我似乎无法获得类型和转换的正确组合来在TypeScript中完成此操作。有没有更好的办法?我在TypeScript中找不到工厂模式的任何示例,所以现在我只有一点switch语句,它丑陋且不灵活。

JavaScript:不可枚举的属性 - 何时何地?

我最近偶然发现了在JavaScript中对数组使用for..in循环的问题。根据this中的答案问题,for..in旨在枚举对象的属性,包括继承的属性。如果是这样,为什么我们能够使用Object.defineProperty将属性定义为不可枚举的?这不是违背了for..in的全部意图吗?或者它是否被认为是不好的做法,应该避免?此外,为什么我们首先要以这种方式遍历所有属性(即使用for..in循环)?什么时候可以派上用场?为什么不将所有(数组)原型(prototype)扩展定义为不可枚举并继续使用for..in数组? 最佳答案 问题是

javascript - 编写 TypeScript 并为浏览器和 Node 生成一个库

我有一个在Node.js和浏览器中使用的内部库。它有许多文件,与Grunt任务和不同的序言连接在一起,一个用于浏览器,一个用于Node:浏览器://dependent3rd-partylibslikeMustachearealreadyglobalwindow.myLib={/*justanamespaceobjectfilledwithstufflater*/}//thencomestheplainjavascriptwhichjustaddselementstomyLib.//ThispartisidenticaltothatusedinNode//example:myLib.re

javascript - 如何在 Javascript 中使用 C# 枚举

我的C#代码中有一个枚举,我想在我的jQuery验证规则中从枚举中获取名称。枚举:publicenumEnumItemField{Zero=0,One=1,Two=2,Three=3,Four=4,Five=5,}验证:functionupdateFieldStatus(){}$(document).ready(function(){$("#IntegrationService").validate({rules:{//SetrangeofStart"config.EnumFormat[Zero].Start":{required:true,digits:true,range:[1,2

javascript - 如何使用 Node.js 和 convnetjs 从一排数字中深度学习并预测一个新值?

我尝试使用convnetjs让Node.js从x,y坐标中的一行数字中学习。目标是预测简单数字行中的下一个值。首先是一个非常简单的行[0,1,0,2,0,3,0,4,0,5,0,6]也许稍后sin和cos数字行。我不想深入学习深度学习Material,所以我使用的是convnetjs。到目前为止我试过了:varconvnetjs=require("./convnet-min.js");//createanetoutofitvarnet=newconvnetjs.Net();varlayer_defs=[];layer_defs.push({type:'input',out_sx:1,o

javascript - 对于 Angular2 项目,在 gulp 中,我如何连接从 typescript 生成的所有 JavaScript 文件并将它们添加到我的 index.html 文件中

对于Angular2项目,在gulp中,我如何连接从typescript生成的所有JavaScript文件并将它们添加到我的index.html文件中。我正在使用Angular2、typescript和gulp。目前我没有连接它从typescript文件生成的javascript文件。我在尝试执行此操作并将它们添加到我的index.html文件时遇到问题。此外,完成此操作后,我需要清除缓存以使浏览器继续请求javascript文件。这是我的index.html文件:MyApp-->System.config({transpiler:'typescript',defaultJSExten