TS | typescript与JavaScript的异同
文章目录
- 前言
- typescript 特点
- javascript 进化
- typescript 局限与解决
前言
随着前段工程化的深入,引入强类型和更多面向对象方法的typescript逐渐被更多开发者运用。
本文将介绍从以下三点介绍typescript与javascript的异同:
- ts相较js的特点
- js借鉴ts的进化
- ts作为js超集的局限与相应解决方法。
typescript 特点
相较于js(ES6+), ts的基础有以下几大特点:
- ts是js的超集,即你可以在ts中使用原生js语法。
- ts需要静态编译,它提供了强类型与更多面向对象的内容。
- ts最终仍要编译为弱类型,基于对象的原生的js,再运行。故ts相较java/C#这样天生面向对象语言是有区别和局限的
- ts是由微软牵头主导的,其语法风格与概念主要来自C#
javascript 进化
因为ECMA标准的进化,很多ts的专属特性已在原生js中落地,其中包括但不限于:
- let/const 基于块级作用域的变量声明
- lambda(箭头函数)
- class 类
所以,除强类型与泛型等从C#引入的面向对象特性,js与ts的差异已基本被抹平。
typescript 局限与解决
ts是js的超集,这意味着你在ts中写js是完全兼容的,这降低了ts的学习和使用门槛,保留了灵活性,但同时,ts的纯洁性无法保证。
程序是否加入类型声明,是否使用面向对象完全取决于开发者本身,而这种过分的宽容很不利于团队合作的复杂长周期开发。
如果不对ts项目进行严格的代码规范,那么使用ts非但不能提高项目的安全性和严谨性,反而会给自己挖很多坑。
所以,建议ts项目采用团队统一的tslint。
当然,如果希望使用真正的静态,类定义,面向对象的web开发语言,可以考虑放弃typescript,转投dart了。
TS | typescript与JavaScript的异同相关推荐
- Vue.js 作者尤雨溪:TypeScript 与 JavaScript 并行才切合实际!
作者 | Evrone 译者 | 弯月,责编 | 杨碧玉 头图 | CSDN 下载自视觉中国 出品 | CSDN(ID:CSDNnews) 以下为译文: 简介 尤雨溪是一名优秀的软件开发人员,同时是开 ...
- [ Typescript 手册] JavaScript `Array` 在 Typescript 中的接口
[ Typescript 手册] JavaScript `Array` 在 Typescript 中的接口 本文地址:https://blog.csdn.net/qq_28550263/article ...
- TypeScript VS JavaScript 谁更牛?尤雨溪:TypeScript不会取代JavaScript
点击"开发者技术前线",选择"星标????" 让一部分开发者看到未来 来源 | evrone.com 前端之颠 译者 | 核子可乐 TypeScript 和 ...
- TypeScript和JavaScript的区别,全面解读超详细
TypeScript 是 JavaScript 的超集,理解 TypeScript 与 JavaScript 区别以选择合适的语言. 1.TypeScript 特性 TypeScript 是 Micr ...
- 微软推出VS Code新特性,为TypeScript和JavaScript用户提供AI辅助开发功能
除了开发人员非常喜欢的IntelliSense和代码完成之外,今年早些时候,微软还发布了IntelliCode,提供了一组AI辅助开发功能.VS Code团队现在宣布了一项新的实验性扩展,将Intel ...
- Typescript 和 Javascript之间的区别
JavaScript 和 TypeScript 的概要介绍 JavaScript JavaScript 是一种轻量级的解释性脚本语言,可嵌入到 HTML 页面中,在浏览器端执行,能够实现浏览器端丰富的 ...
- TypeScript和JavaScript哪种语言更先进
TypeScript和JavaScript哪种语言更先进 近两年来最火爆的技术栈毫无争议的是JavaScript,随着ES6的普及,不管是从前端的浏览器来看,还是后端的NodeJS场景,JavaScr ...
- 微软推出 VS Code 新特性,为 TypeScript 和 JavaScript 用户提供 AI 辅助开发功能
除了开发人员非常喜欢的IntelliSense和代码完成之外,今年早些时候,微软还发布了IntelliCode,提供了一组 AI 辅助开发功能.VS Code 团队现在宣布了一项新的实验性扩展,将 I ...
- typescript或javascript深拷贝Object json
typescript或javascript深拷贝Object json Object的json对象很多时候我们需要深拷贝,我写了两个工具函数,供大家参考. deepCopyObject 深拷贝一个Ob ...
最新文章
- 【读书笔记】编写高质量的代码Web前端开发修炼之道——曹刘阳
- [Winodows图形编程]初识双缓冲技术
- mysql frm 恢复_mysql 从 frm 文件恢复 table 表结构的3种方法
- CSS基本知识之常用的选择器分类
- matlab 登录界面设计,【MATLAB】 浅析登录界面设计
- 编程之美 1.4买书问题常数时间空间解法
- linux 数据转为曲线图,Linux系统下生成TPS,ResponseTime曲线图
- Java开发手册黄山版新增规约摘录
- cocos2dx android studio 打包总结
- 包学会之浅入浅出Vue.js:升学篇
- 活动回顾 | Mini XMan线上快闪活动圆满结束!
- 懂电脑的都不会买i7处理器,程序员:我有一个十几万的电脑梦
- UEditor上传文件大小超限,上传失败问题解决
- 吴式太极拳的特点-和基础要求
- python人工智能要看哪些书籍_有趣的电影英文怎么读
- 记录解决nonebot2中定时器报时区问题的错误
- AJAX与JavaScript脚本语言
- java计算机毕业设计springboot+vue校园出入管理系统
- 果数据库被锁了,查询并杀死对应的进程
- Arduino提高篇21—RFID模块门禁设计