• .js是javascript文件的扩展名,例如main.js。
  • .jsx是javascript文件并表明使用了JSX语法。
  • .ts是typescript文件的扩展名
  • .tsx表明是typescript文件并使用了JSX语法。

JSX就是Javascript和XML结合的一种格式。React发明了JSX,利用HTML语法来创建虚拟DOM。当遇到<,JSX就当HTML解析,遇到{就当JavaScript解析。

JSX 只是为React.createElement(component, props, …children) 方法提供的语法糖。React 自创了JSX语法,是一个 JavaScript 的语法扩展,官方建议在 React 中配合使用 JSX 来替代原始的 JS。因为JSX 可以更好的描述 UI 应该呈现出它应有交互的本质形式。JSX 看起来有点类似模版语言,但它具有 JavaScript 的全部功能。但是React的JSX语句并非js语言的标准语句(如果使用编辑器默认的js解析方案其实是会报错的,现在编辑器允许你选择不同的解析方案),但是后缀为.jsx,一般编辑器默认就用React的方式解析了。

TypeScript 是 Microsoft 开发和维护的一种面向对象的编程语言。TypeScript 是 JavaScript 的一个超集,扩展了 JavaScript 的语法,是一种给 JavaScript 添加特性的语言扩展,增加了静态类型、类、模块、接口和类型注解方面的功能。支持 ECMAScript 6 标准。

TypeScript 设计目标是开发大型应用,它可以编译成纯 JavaScript,编译出来的 JavaScript 可以运行在任何浏览器上。

JavaScript 和 TypeScript 的主要差异:

  1. TypeScript 可以使用 JavaScript 中的所有代码和编码概念,TypeScript 是为了使 JavaScript 的开发变得更加容易而创建的。例如,TypeScript 使用类型和接口等概念来描述正在使用的数据,这使开发人员能够快速检测错误并调试应用程序。
  2. TypeScript 从核心语言方面和类概念的模塑方面对 JavaScript 对象模型进行扩展。
  3. JavaScript 代码可以在无需任何修改的情况下与 TypeScript 一同工作,同时可以使用编译器将 TypeScript 代码转换为 JavaScript。
  4. TypeScript 通过类型注解提供编译时的静态类型检查。
  5. TypeScript 中的数据要求带有明确的类型,JavaScript不要求。
  6. TypeScript 为函数提供了缺省参数值。
  7. TypeScript 引入了 JavaScript 中没有的“类”概念。
  8. TypeScript 中引入了模块的概念,可以把声明、数据、函数和类封装在模块中。

.js/.jsx/.ts/.tsx相关推荐

  1. (005)RN开发 js jsx ts tsx的区别

    背景:在入门RN开发的过程中,发现公司项目代码中,有的项目是全是.js的后缀文件.有的项目全是ts.tsx.js 文件.心中很是疑惑,所以就写个文章记录下自己的解惑的过程. js:是弱类型语言,容易出 ...

  2. Typescript助力项目开发:JS切换TS、TS类型定制与思考

    TS已经成为可以帮助项目顺利开发的存在了.在上半年笔者就被要求采用TS开发新的项目,并在一些老项目中用TS去改造(因为沟通原因我以为某个远程组件只有TS版本).在其中也有了一些思考. 首先是目录结构. ...

  3. class ts 扩展方法_如使用Typescript撸Vue(Vue2 + TS +TSX+CSS module)

    Vue对TS的支持一致不太好,连Vue作者尤大也自嘲真香压错了宝.期待Vue3.0会用TS重构且会有较大改进.不过目前有一些第三方的库可以曲线优化对TS的支持.主要就介绍下过下面两个库来写Vue. 总 ...

  4. VUE3/TS/TSX入门手册指北

    VUE3入门手册 vue3入门 首先 查看 官方文档:https://cn.vuejs.org/guide/quick-start.html 如果有vue2基础,速成课程:https://www.zh ...

  5. Vue老项目由js转换ts指南

    Vue(2.x)老项目由js转换ts指南 其实在网上有不少关于,vue迁入ts的教程,但是很多并不完善,故做此篇 本项目基于 vue-admin-template进行改造 ,它是有ts版本的,因此本文 ...

  6. js 升级 ts 之路,含 vue 升级攻略

    原文地址: https://www.jeremyjone.com/724/, 转载请注明. 最近在升级项目,用到了TypeScript,简单总结一下JS转TS,尤其是在vue中的使用方式. 基础语法 ...

  7. JS,ES,TS关系

    JS , ES , TS 的关系 1995年:JavaScript诞生 当时的网景公司正凭借其Navigator浏览器成为Web时代开启时最著名的第一代互联网公司. 由于网景公司希望能在静态HTML页 ...

  8. js调用ts,亲测。

    js调用ts. ts类: export class OperateStepsPage implements OnInit {private static jsUse: OperateStepsPage ...

  9. Web端直接播放 .ts 视频及mux.js播放ts视频没有声音

    最近项目中需要前端播放 .ts 格式视频,捣鼓了几天学习到很多知识,也发掘了一种优秀的解决方案,分享给有同样需求的同学. 常见方案 在网上查找的大部分解决方案都是用诸如videojs等网页播放器,接收 ...

最新文章

  1. mysql服务等待应答超时_MySQL-Communications link failure异常分析及解决方法
  2. python爬取动态网页图片_python爬虫之爬取动态加载的图片_百度
  3. Exercise 42: Is-A, Has-A, Objects, and Classes
  4. 昂首阔步:让开发人员喜欢使用您的REST API
  5. [css] css怎么更改表单的单选框或下拉框的默认样式?
  6. 微软免费软件项目DreamSpark更名为Microsoft Imagine
  7. 92030302随堂笔记 c# 1614675886
  8. Hessian Matrix
  9. 【优化电价】基于matlab内点法求解实时电价最优问题【含Matlab源码 1161期】
  10. Python遗传算法部分匹配交叉(PMX)
  11. dubbo接口调试工具
  12. HTML表格表单制作
  13. 修复win7更新服务器失败,Win7旗舰版系统Windows Update更新提示遇到未知错误的解决方法...
  14. 087 定积分求面积应用习题
  15. xlwings对excle文档设置条件格式
  16. 从小就对生意耳濡目染的小伙,长大后创业资产过亿
  17. global mapper 导入bln文件和tif文件
  18. P5656 【模板】二元一次不定方程 (exgcd)(公约数)
  19. AppScan安全扫描工具-IBM Security App Scan Standard
  20. Python 骚操作:微信远程控制电脑(转载)

热门文章

  1. SpringBoot 整合Nats[笔记]
  2. 艾美捷葡萄糖比色测定试剂盒解决方案
  3. android 底座充电压力插拔,有概率没有提示音
  4. 1-8 linux系统中的软件管理
  5. 音视频技术开发周刊 | 209
  6. zzuli OJ 1016: 银行利率
  7. WAIC 2021 | 第四范式戴文渊:AI决策助力金融转型走向质变
  8. 使用 uWSGI 和 Nginx 部署 Flask 应用程序
  9. Redis分布式锁入门
  10. 跟Gregg学习系统性能--Linux性能优化CPU 内存