The TypeScript compiler is a powerful tool which catches mistakes even in vanilla JavaScript. Try it online at the TypeScript Playground, zero setup required. Error version: var movie = { title: "Memento", year: 2000, IMDB: 8.5, title: "&qu…
JavaScript过去一直被当作一种玩具语言存在,直到2005年以后,这门语言又开始活跃并可以说是火爆,而且随着浏览器版本的不断升级和完善,各种DOM之间的兼容性已经渐渐的被各种技术解决了,比如经典的jQuery,JavaScript版本也在快速发展和完善.现如今,Web世界越来越让人摸不着边际,JSON.AJAX.HTML5.Sliverlight.Node.js.PhoneGap几乎都可以见到JavaScript忙碌的身影.不过渐渐的有经验的用户会发现JavaScript语言本身的局限性导…
TypeScript是个什么鬼?和JavaScript有什么关系? TypeScript是由微软开发的一种可快速入门的开源的编程语言,是JavaScript的一个超集,且向这个语言添加了可选的静态类型和基于类的面向对象编程.能够帮助web前端开发人员编出更出色的JavaScript代码.搞定规模可观的JavaScript项目并为ECMAScript 6的来临做好准备. JavaScript是一款通用脚本语言,植根于开发工具的核心深处,同时在Node.js等服务器端实现方案中也有所体现.除此之外,…
使用Typescript来写javascript 前几天尝试使用haxejs来写javascript,以获得静态类型带来的益处.虽然成功了,但很快发现将它与angularjs一起使用,有一些不太顺畅的地方,导致开发效率没有提升,反而下降了.虽然我认为使用haxejs来写普通的js(或者与jquery相关的js)没有问题,但不适合与angularjs这样与HTML侵入较大的js框架配合. 昨天偶然发现idea居然支持typescript了,于是打算尝试一下typescript,目前的感觉还不错,相…
eval5是基于TypeScript编写的JavaScript解释器,100%支持ES5语法. 项目地址:https://github.com/bplok20010/eval5 使用场景 浏览器环境中需要使用沙盒环境执行JavaScript脚本 控制代码执行时长 不支持eval Function的JavaScript运行环境:如 微信小程序 研究/学习用 安装 npm install --save eval5 使用 import { Interpreter } from 'eval5'; con…
我的electron教程系列 electron教程(一): electron的安装和项目的创建 electron教程(番外篇一): 开发环境及插件, VSCode调试, ESLint + Google JavaScript Style Guide代码规范 electron教程(番外篇二): 使用TypeScript版本的electron, VSCode调试TypeScript, TS版本的ESLint electron教程(二): http服务器, ws服务器, 子进程管理 electron教程…
<上篇博客>我写出了我一直期望的 JavaScript 大型程序的开发模式,以及 TS(TypeScript) 的一些优势.博客完成之后,我又花了一天时间试用 TS,用它来重构之前编写的一个 JS 游戏:<Javascript 坦克游戏>. 源码下载 源码我已经上传到 CSDN 了,无需资源分,下载地址:http://download.csdn.net/detail/zgynhqf/8565873. 源码使用 VS 2013 +TypeScript 1.4 进行开发.打开后,显示如…
请注意本文只是我的偏见,我努力地理解借助CoffeeScript或TypeScript之类的编译器写JavaScript代码的理由.静态编译.强类型语言和框架,我有着这些流行的.丰富的背景.我的上一份工作就是使用TypeScript,因为我不得不使用.那是一段不快乐的时光,我将因此而离开. 我很幸运地把自己从这种困境和负担中释放出来,正在完全地使用JavaScript编写代码,我对此感到格外高兴!如果我对于这种变化的热情还不够明显,请让我向你保证,我现在更开心了.有一点很重要,我不是在暗示静态编…
最近工作中用到,记录一下:假设我们需要一个功能,把一个数字比如10000输出为下面的字符串格式“10,000”,一般是写一个方法,那么我希望更方便一点,直接向Number类型添加一个格式化方法,比如叫toFormat的方法来实现得到格式化后的字符串. 添加.d.ts定义 要在TypeScript中扩展一个基础对象的方法需要预先告知编译器有该方法才行: interface Number { toFormat(): string; } 添加实现 具体实现根据需要编写即可,需要注意的是要添加在原型对象…
Sometimes we might want to make a function more generic by having it accept a union of different types as an argument. Using the JavaScript “in” operator, we can test for the presence of different properties on the argument object, and TypeScript wil…