当前位置: 首页 > news >正文

建立个人博客网站wordpress/地推团队接单平台

建立个人博客网站wordpress,地推团队接单平台,河池网站建设服务,wordpress怎么做淘宝推广万维网基本上在JavaScript,HTML和CSS上运行。 不幸的是, JavaScript缺少一些可帮助开发人员将其用于大规模应用程序的功能。 输入TypeScript 。 什么是JavaScript? JavaScript最初是Netscape Navigator Web浏览器的一种脚本语言。 Brendan …

万维网基本上在JavaScript,HTML和CSS上运行。 不幸的是, JavaScript缺少一些可帮助开发人员将其用于大规模应用程序的功能。 输入TypeScript 。

什么是JavaScript?

JavaScript最初是Netscape Navigator Web浏览器的一种脚本语言。 Brendan Eich于1995年花了10天的时间编写了原型。JavaScript的名称是Sun Microsystem的Java语言的致敬,尽管这两种语言完全不同,并且多年来的名称相似已引起了极大的困惑。 JavaScript有了长足的发展,现在所有现代Web浏览器都支持它。

紧接着在Netscape Navigator中引入了客户端JavaScript,随后在Web服务器Netscape Enterprise Server和Microsoft IIS中引入了服务器端JavaScript。 大约13年后,Ryan Dahl引入了Node.js作为独立于任何浏览器或Web服务器的开源,跨平台,JavaScript运行时环境。

[ 不要错过InfoWorld的2020年度技术奖获奖者:年度最佳软件开发,云计算,数据分析和机器学习产品 ]

JavaScript语言

JavaScript是一种多范式语言。 它具有花括号语法和分号,例如C系列语言。 它具有弱而动态的类型,并且可以被解释或(经常)是实时编译。 通常,JavaScript是单线程的,尽管有一个执行多线程的Web Workers API,并且有事件,异步函数调用和回调。

JavaScript支持使用原型而不是C ++,Java和C#中使用的类继承的面向对象编程,尽管在2015年JavaScript ES6中添加了class语法。JavaScript还支持函数式编程,包括闭包,递归和lambda(匿名函数) 。

在JavaScript ES6之前,该语言没有尾部调用优化功能。 现在可以了,尽管您需要打开严格模式'use strict' )来启用它,并且实现因浏览器而异。 严格模式还更改了JavaScript的语义,并更改了一些通常为静默的错误以引发错误。

什么叫“ ES6”? 标准化JavaScript语言的名称是ECMA International标准机构之后的ECMAScript(ES)。 ES6也称为ECMAScript 2015(ES2015)。 ES2020当前是标准草案。

作为提供JavaScript语言风格的简单示例,下面的代码可以确定是白天还是晚上,并将适当的问候动态地放入浏览器文档对象中的命名Web元素:

var hour = new Date().getHours();
var greeting;
if (hour < 18) {
  greeting = "Good day";
} else {
  greeting = "Good evening";
}
document.getElementById("demo").innerHTML = greeting;

JavaScript生态系统

有许多JavaScript API。 有些是由浏览器提供的,例如上面显示的代码中的document API,而有些则是由第三方提供的。 一些API适用于客户端使用,某些适用于服务器端使用,某些适用于桌面使用,某些适用于多个环境。

浏览器API包括文档对象模型 (DOM)和浏览器对象模型 (BOM), 地理位置 , 画布 (图形), WebGL (GPU加速图形), HTMLMediaElement (音频和视频)和WebRTC (实时通信)。

[ 同样在InfoWorld上:React,Angular和Vue的15种绝佳替代方案 ]

第三方API比比皆是。 有些是完整应用程序的接口,例如Google Maps 。 其他的则是使JavaScript HTML5和CSS编程更容易的实用程序,例如jQuery 。 有些,例如Express ,是用于特定目的的应用程序框架。 对于Express,目的是在Node.js上构建Web和移动应用程序服务器。 在Express之上还构建了许多其他框架 。 在2016年,我讨论了22个JavaScript框架 ,以弄清什么正在变成动物园。 这些框架中有许多仍然以一种或另一种形式存在,但是有些已经被淘汰了。

还有更多JavaScript模块,超过30万。 为了解决这个问题,我们使用软件包管理器 ,例如npm ,它是Node.js的默认软件包管理器。

npm的一种替代选择是Yarn ,它来自Facebook,声称具有确定性安装的优势。 类似的工具包括Bower (来自Twitter),它管理前端组件而不是Node模块。 Ender自称npm的妹妹; 和jspm ,它使用ES模块(模块的最新ECMA标准),而不是CommonJS模块,npm支持较旧的事实上的标准。

Webpack将 JavaScript模块捆绑到浏览器的静态资产中。 Browserify允许开发人员编写Node.js样式的模块,这些模块经过编译后可在浏览器中使用。 Grunt是一个面向文件JavaScript任务运行程序,而gulp是一个流式构建系统和JavaScript任务运行程序。 咕unt声和吞咽声之间的选择不是决定性的。 我已经安装并使用了为给定项目设置的任何一个。

为了使JavaScript代码在无需编译的情况下更加可靠,我们使用了linters。 该术语来自C语言的lint工具,它是标准的Unix实用程序。 JavaScript的棉短绒包括的JSLint , JSHint和ESLint 。 您可以使用任务运行程序或IDE在代码更改后使运行中的linter自动化。 同样,在短绒棉中的选择也不是很明确,我使用为给定项目设置的任何一个。

谈到编辑器和IDE,我审查了6个JavaScript IDE和10个JavaScript编辑器 ,最近一次是在2019年。我的首选是Sublime Text (超快速编辑器), Visual Studio Code (可配置编辑器/ IDE)和WebStorm (IDE)。

编译器允许您将其他一些语言(例如CoffeeScript或TypeScript)转换为JavaScript,并将现代JavaScript(例如ES2015代码)转换为在(几乎)任何浏览器中运行的基本JavaScript。 (对于Internet Explorer的早期版本,所有押注都是关闭的。)现代JavaScript最常见的编译器是Babel 。

[ 同样在InfoWorld上:如何将Python转换为JavaScript(并再次转换) ]

什么是TypeScript?

TypeScript是JavaScript的类型化超集,可编译为普通JavaScript(ES3或更高版本;它是可配置的)。 开源TypeScript命令行编译器可以作为Node.js软件包安装。 Visual Studio 2017和Visual Studio 2019,Visual Studio Code和WebStorm附带TypeScript支持,可以将其添加到Sublime Text,Atom,Eclipse,Emacs和Vim中。 TypeScript编译器/编译器tsc用TypeScript编写。

TypeScript在JavaScript中添加了可选的类型,类和模块,并支持针对任何OS上的任何浏览器,任何主机的大规模JavaScript应用程序的工具。 在TypeScript赢得的众多其他成就中,流行的Angular框架已在TypeScript中进行了改进。

类型使JavaScript开发人员可以在开发JavaScript应用程序时使用高效的开发工具和做法,例如静态检查和代码重构。

类型是可选的,并且类型推论允许一些类型的注释对代码的静态验证产生很大的影响。 类型使您可以定义软件组件之间的接口,并深入了解现有JavaScript库的行为。

TypeScript支持最新和不断发展JavaScript功能,包括ECMAScript 2015的功能以及未来的提案(例如异步功能和装饰器),以帮助构建可靠的组件。

TypeScript语言

TypeScript语言将JavaScript视为有效语言,但提供了类型注释,编译时的类型检查,类和模块的其他选项。 当您尝试生产功能强大的软件时,所有这些功能都非常有用。 纯JavaScript仅在运行时才生成错误,然后仅在程序碰巧出现错误的路径时才生成错误。

5分钟内的TypeScript教程使您受益匪浅。 起点是带有.ts扩展名的纯JavaScript:

function greeter(person) {
  return "Hello, " + person;
}
let user = "Jane User";
document.body.textContent = greeter(user);

如果使用tsc进行编译,它将生成一个扩展名为.js的相同文件。

[ 同样在InfoWorld上:每个开发人员都有10个Visual Studio Code扩展 ]

本教程让您以逐步的方式更改此代码,在函数定义中添加类型注释person:string ,进行编译,通过编译器测试类型检查,为person类型添加接口,最后为Student添加类。 最终的代码是:

class Student {
    fullName: string;
    constructor(public firstName: string, public middleInitial: string,
        public lastName: string) {
            this.fullName = firstName + " " + middleInitial + " " + lastName;
    }
}
interface Person {
    firstName: string;
    lastName: string;
}
function greeter(person: Person) {
    return "Hello, " + person.firstName + " " + person.lastName;
}
let user = new Student("Jane", "M.", "User");
document.body.textContent = greeter(user);

编译此代码并查看发出JavaScript时,您会看到TypeScript中的类只是纯JavaScript ES3中使用的基于原型的继承的简写。 请注意,属性person.firstNameperson.lastName由编译器在Student类构造函数中看到它们的public属性时自动生成,并且也带入Person接口。 TypeScript中类型注释的最大好处之一是它们可以被工具识别,例如Visual Studio Code:

打字稿类型注释lg IDG

如果在VS Code中进行编辑时代码中存在错误,则会在“问题”选项卡中看到错误消息,例如,如果删除带有Student实例化的行的末尾,则会显示以下错误消息:

打字稿错误lg IDG

“ 从JavaScript迁移”教程详细介绍了如何升级现有JavaScript项目。 跳过设置步骤,该方法的重点是将.js文件一次重命名为.ts。 (如果文件使用React使用的扩展名JSX,则需要将其重命名为.tsx而不是.ts。)然后加强错误检查并修复错误。

[ 同样在InfoWorld上:敏捷软件开发经理的5个职责 ]

除其他外,您需要将基于模块的require()define()语句更改为TypeScript import语句,并为使用的任何库模块添加声明文件 。 您还应该使用TypeScript export语句重写模块export 。 TypeScript支持CommonJS模块,就像Node.js一样。

如果您收到有关参数数量错误的错误,则可以编写TypeScript函数重载签名。 这是JavaScript缺少的重要功能。 最后,您应该将类​​型添加到自己的函数中,并在适当的地方使用接口或类。

通常,您无需为公共领域JavaScript库编写自己的声明文件。 DefinitelyTyped是声明文件的存储库 ,所有声明文件都可以使用npm访问。 您可以使用TypeSearch页面找到声明。

将所有JavaScript文件都转换为TypeScript,增强类型并消除错误后,您将拥有更强大的代码库。 您将能够静态地检测最常见的错误,而不必不断修复测试人员或用户报告的运行时错误。

值得一看的是Anders Hejlsberg讨论TypeScript 。 如您所见,TypeScript是可扩展JavaScript。

From: https://www.infoworld.com/article/3526447/typescript-vs-javascript-understand-the-differences.html

http://www.lbrq.cn/news/1085059.html

相关文章:

  • 小型网站开发需要什么步骤/关键词优化排名公司
  • 网站建设手机/北京seo代理公司
  • wordpress slider pro/自己搜20条优化措施
  • 东莞微信网站制作/推广文章的推广渠道
  • 郴州卖房网站/口碑营销的步骤
  • 什么网站上做效果图可以赚钱/注册公司流程和费用
  • 徐州哪家公司做网站水平好/搜索引擎优化seo论文
  • 网站备案管理系统登录不上去/兰蔻搜索引擎营销案例
  • 已有网站做移动网站/搜索引擎论文3000字
  • 长沙建站位找有为太极广大/全国疫情最新消息
  • 网站建设是基础服务吗/沈阳seo优化
  • 做网站公司南京/做引流推广的平台600
  • 上海进博会?/沈阳沈河seo网站排名优化
  • 特色直播/seo技术自学
  • 自己做的网站只能打开一个链接/如何做好营销推广
  • 盘锦公司做网站/知识付费网站搭建
  • 深圳企业网站建设费用/seo顾问什么职位
  • 常州 网站优化/廊坊网站排名优化公司哪家好
  • 做网站收会员费违法吗/泰安网站seo
  • 站长之家网站建设制作/做网站公司
  • python做网站多少钱/磁力链搜索引擎入口
  • 品牌营销型网站建设/深圳推广
  • 二级域名iis建立网站/建站平台哪家好
  • 怎么做宣传网页/搜索引擎优化核心
  • 快速建站学什么/郑州百度推广公司地址
  • 学校网站模板html/软文发布平台排名
  • 大流量ip网站怎么做/深圳优化怎么做搜索
  • 佛山网站建设维护/电子邮件营销
  • 设计资源网站大推荐/seo推广平台
  • 怎样改网站英文域名/流量神器
  • 机器学习sklearn:决策树的参数、属性、接口
  • AI论文阅读方法+arixiv
  • 自学嵌入式 day36 数据库
  • C++模板进阶:从基础到实战的深度探索
  • 电脑出现英文字母开不了机怎么办 原因与修复方法
  • 零基础 “入坑” Java--- 十五、字符串String