整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

三分钟了解当前最受欢迎的前端语言标准:TypeScr

三分钟了解当前最受欢迎的前端语言标准:TypeScript 核心特性

CMA简单来说是评估、开发和认可计算机标准的一个组织。我们熟知的Javascript就是由他来制定标准的。经过从1997年ECMAScript 1后到今天我们要介绍的ECMAScript 6经历近20年。ES6 是在2015年6月发布的,此后由于标准委员会最终决定,标准在每年的 6 月份正式发布一次,作为当年的正式版本,所以ES6也叫做ES2015。

ES6扩充了之前发布的ES5语法并使得 JavaScript语言可以用来编写大型的复杂的应用程序,成为企业级开发语言。ES6 增添了许多必要的特性,例如:模块和类、Maps、Sets、Promises、生成器(Generators)以及一些实用特性等。

因为现在市场上流行的浏览器很多对ES6还没有完全支持。所以使用ES6编写的javascript也需要使用工具在转成ES5的语法,比如使用Babel转码器。

那TypeScript和ES6有什么区别呢?

TypeScript是由微软开发的自由和开源的编程语言。Google的Angular 2框架就是用TypeScript开发的,两个公司对此有着诸多交流。背靠着两大科技界扛把子,让我们来一睹TypeScript的风采。

首先TypeScript是ES6的超集。除了包含所有ES6语法外,他自身也有很多特性。

  • 基于静态类型,用 TypeScript 编辑代码有更高的预测性,更易纠错。

  • 由于模块,命名空间和强大的面向对象编程支持,使构建大型复杂应用程序的代码库更加容易。

  • TypeScript在编译为JavaScript的过程中,在它到达运行时间前可以捕获所有类型的错误,并中断它们的执行。

首先需要安装TypeScript,可以通过npm来安装。npm install -g typescript

安装后就可以使用命令来编译用TypeScript编写的.ts文件成为.js文件,这样让编写的文件在浏览器上运行。编译的过程可以通过配置来选择使用ES5或者ES6的语法来编译,这点还是很方便强大的。

支持 TypeScript 的文本编辑器

此外随着TypeScript的日益流行,现在也出现了更多本身支持或者通过插件支持 TypeScript 语法、智能提示、纠错、甚至是内置编译器的文本编辑器和IDE。

  • Visual Studio Code– 微软另外一个轻量级的开源代码编辑器。内置支持TypeScript。

  • Sublime Text的官方免费插件。

  • WebStorm的最新版本带有内置支持。

  • 其他包括Vim,Atom,Emacs等。

静态类型

TypeScript 一个很独特的特征是支持静态类型。意思就是可以声明变量的类型,(因此)编译器就可以确保赋值时不会产生类型错误。如果省略了类型声明,TypeScript 将会从代码中自动推测出正确的类型。

这有个例子。任意变量,函数自变量或者返回值在初始化时都可以定义自己的类型

因为 JavaScript 是弱类型语言(即不声明变量类型),因此 TypeScript 编译为 JavaScript 时,(变量类型的声明)全部被移除:

然而,如果我们试着输入非法的语句,tsc 会警告代码里有错误。例如:

以下是一些最常用的数据类型:

  • Number (数值类型) – 所有数字都是数值类型的,无论是整数、浮点型或者其他数值类型都相同。

  • String(字符串类型) – 文本类型,就如 vanilla JS 字符串一样可以使用单引号或者双引号。

  • Boolean(布尔类型) – true 或者 false,用 0 和 1 会造成编译错误。

  • Any(任意类型) – 该类型的变量可以设定为字符串类型,数值类型或者任何其他类型。

  • Arrays(数组类型) – 有两种语法:my_arr: number[];或者my_arr: Array<number>

  • Void (空类型)- 用在不返回任何值的函数中。

Interfaces 接口

接口通常会根据一个对象是否符合某种特定结构来进行类型检查。通过定义一个接口我们可以命名一个特殊的组合变量,确保它们会一直一起运行。当转译成 JavaScript 时,接口会消失 – 它们唯一的目的是在开发阶段里起到辅助的作用。在下面的例子中我们定义了一个简单的接口来对一个函数自变量进行类型检查:

属性的顺序并不重要。我们只需必要的属性存在并且是正确的类型。如果哪里有遗漏,类型错误,或者命名不同的话,编译器都会报警告信息。

在搭建大型规模的应用程序时,尤其是在 Java 或 C# 当中,许多开发者会优先选择面向对象编程。TypeScript 提供一个类系统,和 Java、C# 中的非常相似,包括了继承,抽象类,接口实现,setters/getters 方法等。

值得一提的是由于最新的 JavaScript 更新(ECMAScript 2015),这些类对于 vanilla JS 来说是原生的,并且在没有 TypeScript 的情况下也可以使用。这两种实现方式非常相似但是也有不同的地方,TypeScript 更加严格一些。

继续上面的 food的 例子,这里有一个简单的TypeScript类:

只要写过一点 Java 或者 C# ,就会发现TypeScript和它们在语法上非常相似。继承也是一样:

泛型

泛型(Generics)是允许同一个函数接受不同类型参数的一种模板。相比于使用 any 类型,使用泛型来创建可复用的组件要更好,因为泛型会保留参数类型。

一段简单的脚本例子,传入一个参数,返回一个包含了同样参数的数组。

第一次调用函数的时候,我们将类型手动设置成字符串。第二次及以后再次调用的时候就不必这样做了,因为编译器会判断传递过什么参数并且自动决定哪种类型最适合。虽然不是强制性的,但是由于编译器在众多复杂环境中确定正确类型的时候可能会失败,所以每次都传入类型是好的做法。

TypeScript 本身是开源的,同时其架构设计的也很优秀,提供了大量的API来供开发人员来扩展其功能,目前仍在积极开发和持续演变中。

随着各大厂商对ES6标准的不断支持,TypeScript 和 JavaScript 都会有属于他们自己的舞台,让前端技术能够适应越来越复杂的应用成为可能。

如果你有什么疑问或者问题,请关注我并给我私信,我将在第一时间给予回复!

、 结构

一、标记<Html> 建立HTML文档

<Head> 设置网页头部和其它信息

<Body> 设计文件格式及内文所在<Body> 元素的属性

Text 设置页面文字的送顔色 Bgcolor 设置页面背景的顡色

Background 设置页面的背景图像 Link设置页面黙认的顔色

Bgproperties 设置页面的背景图像为固定,不随页面的滚动而滚动

Alink 设置鼠标正在单击时候的链接顔色 Vlink 设置访问过后的链接顔色

Topmargin 设置页面的上边距 Leftmargin 设置页面的左边距

二、头部

标记 <Base> 当前文档的URL全称 <Title>设置显示在浏览器在上方的标题内容

<Isindex> 表明该文档是一个可用于检索的网关脚本

<Meta> 有关文档本身的信息,例如用于查询的关键词,用于获取该文档的有效期等

<Style> 设置CSS层叠样式表的内容

<link> 设置外部文件的链接 <script> 设置页面中程序脚本的内容

<Mate> 标记属性

Http-Equiv 生成一个HTTP标题域,它的取值与另一个属性相同,

例如Http-Equiv=Expires,实际取值由Content确定

Name 如果元数据是以关键字/取值的形式出现的,Name 表示键字,

如Author或ID

Content 关键字/取值的内容

三、文字

文字标记 <HNumber>……<1HNumber> Number=1.2.3.4.5.6

分别指1至6级标题

<Font>文字

文字的修饰标记 <B>/<strong> 粗体 <I>/<Em>/<cite> 斜体

<Sup>上标 <sub>下标 <Big>大字号 <small>小字号

<U>下划线 <S>/<strike>删除线 <Address>地址

<Tt>打字机文字 <Blink>闪烁文字(只适用于Netscape浏览器)

<Code>/<samp>等宽 <kbd>键盘输入文字 <Var>声明变量

<Fant>标记的属性

Face 字体 Size字号 Color顔色

四.列表

列表标记 <Ul>无序列表 <Ol>有序列表 <Dir>回录列表 <Dl>定义列表

<Meru>菜单列表 <Dt>·<Dd>定义列表的标记 <Li>列表项目的标记

<Ul><Ol>标记的属性 Type设置列表类型 start设置列表起始属性

Type的属性值 1 数字 a 小写字母 A 大写字母 i小写罗马数字

I 大写罗马数字 Disc ● Circle ○ square □

五.链接

链接标记 <A> 链接

<A>标记的属性 Href 指定链接地址 Name给链接命名

Title设置链接提示文字 Target指定链接的目标窗口

Target属性值 -parent在上一级窗口中打开。一般使用分帧的框架页会经常使用

-bank在新窗口中打开

-self在同一个帧或窗口中打开.这项一般不用设置

Href属性值 http:// 进入万维网站点 news://启动新闻讨论

ftp:// 进入文件传输服务器 mailto:// 启动新闻讨论组

telnet:// 启动telnet方式 gopher://访问一个gopher服务器

六.图片

图片标记 <Img>图片 <Map>图像映射 <Area>图像映射中定义区域

<lmg>标记的属性 src图像的源文件 Alt提示文字 Width宽度

Height高度 Vspace垂直间距 Hspace水平间距 Align排列 Border边框

Align属性值 Top文字的中间线居于图片上方 Middle文字的中间线居于图片中间

Bottom文字的中间线居于图片底部 Left 图片在文字的左侧

Right图片在文字的右侧 Absbottom文字的底线居于图片底部

Absmiddle文字的底线居于图片中间 Baseline英文文字基线对齐

Texttop英文文字上边线对齐

Shape属性值

Rect矩形区域 Circle椭圆形区域 Poly多边形区域

七.表格

1.表格标记 <Table>…</Table>表格标记 <Tr>…</Tr>行标记

<Td>…</Td>单元格标记 <Th>表头标记

<Table>标记属性 Bordercolor 表格边框色 Borde表格边框的宽度

Bordercolorlight 表格边框亮边框色(左上边框顔色)

Bordercolordark 表格暗边框色(右下边框顔色)

Bordercolor 行的边框顔色 Width表格的宽度 Height表格的高度

Bgcolor表格的背景顔色 Background表格的背图像

<Tr>标记属性 Align行内容的水平对齐 Valign 行内容的垂直对齐

Bgcolor 行的背景顔色 Background 行的背景图像

Bordercolor 行的边框顔色 Bordercolorlight 行的亮边框顔色

Bordercolordark 行的暗边框顔色

<Td>标记属性 Align单元内容的水平对齐 Valign单元格内容的垂直对齐

Bgcolor 单元格的背景顔色 Background 单元格的背景图像

Bordercolor单元格的背景顔色 Bordercorlorlight单元格的亮边框顔色

Brodercolordark 单元格的暗边框顔色 Width 单元格的宽度

Height单元格的高度

<Th>标记属性 Align表头内容的水平对齐 Valign表头内容的垂直对齐

Bgcolor 表头的背景顔色 Background表头的背景图像

Bordercolor表头的边框顔色 Bordercolorlight 表头的亮边框顔色

Bordercolordark 表头的暗边框顔色 Width 表头的宽度 Height 表头的高度

八.表单

1.表单标记 <Form>表单标记 <Input>表单输入标记

<select>菜单和列表标记 <Option>菜单和列表项目标记

2.属性 <Form> Name表单的名称

Method 定义表单结果从浏览器传送到服务器的方法,一般有两种方法:get,post

Action 用来定义表单处理程序(一个Asp,CGI等程序)的位置(相对地址或绝对地址)

<lnput>标记属性 Name 域的名称 Type域的类型

Maxlength 域的最大输入字符数 size域的宽度 Value 域的默认值

<Select>标记属性 Name 菜单和列表的名称 size 显示的选项数目

Multiple 列表中的项目多选 Value 选项值 selected默认选项

<Texrarea>标记属性 Name 文字域的名称 Rows文字域的行数

Cols 文字域的列数 Value 文字域的默认值

Type属性值 Text 文字域 Password 密码域 File 文件域

Checkbox复选框 Redio单选框 Button普通按扭

Submit 提交按钮 Reset重置按钮 Hidden隐藏域Image图像域

九.滚动

滚动标记 <Marquee>

<Marquee>标记属性 Direction 滚动方向 up 文字向上滚动 Left文字向左滚动

Behavior 滚动方式 Scroll 循环往复

Side 只做一次滚动

Alternate 交替进行滚动

ScrollAmount 滚动速度

ScrollDelay 滚动延迟

Trim函数用来剔除首尾空格

十.框架

1.标记 <Frameset> 框架边框标记 <Frame> 框架标记 <Iframe>浮动框架标记

<Frameset>标记属性 Cols列 Rows行

<Frame> 标记属性 src框架中显示页面源文件的路径

FrameBorder 框架边框显标属性 FrameSpacing框架边框宽度属性

Scrolling框架滚动条显示属性 NoResize 框架尺寸调整属性

BorderColor 框架边框顔色属性 MarginWidt 框架边框缘宽度属性

MarginHerght框架边缘高度属性

<1frame> 标记属性 src浮动框架中显示页面源文件的路径

Width 浮动框架的宽度 Height 浮动框架的高度

Name 浮动框架的名称

Align 浮动框架的排列方式 Left表示居左 Center表示居中 Right表示居右

FrameBorder 框架边框显示属性 FrameSpacing 框架宽度属性

Scrolling 框架滚动条显示属性 ( yes显示 No不显示 Auto根据页面的长度自动判断是否晶粒示滚动条

NoResize 框架尺寸调整属性 BorderColor框架的顔色

MarginWidth 框架边缘宽度属性 MarginHeight 框架边缘高度属性

插入刷新

步骤:1.选择"查看/文件头内容"

2.在插入面板上,打开HTML选项卡

优化代码

打开文件窗口,执行"命令、清理HTML"命令

文本换行:Enter 行距较大

Enter + Shift 行距较小

插入水平线设置顔色:单击属性面板中的快捷标签编辑器按钮

在代码中键入"color=#顔色值"

当图像无法显示时将显示这段文字:

图像属性中的替代→输入文字

插入鼠标经过图像:准备两张图像

在文件窗口中,将光标放置于需要翻转图像位置→插入工具栏中单击鼠标经过图像

Ⅱ.使用导航条:

在"常用"对象组中,单击"图像"小三角→导航条

插入图像占位符:图像小三角→图像占位符

Flash动画的背景实现透明 参数wmode 值 transparent

插入 Java Applet

插入表单

插入表单域:对象面板上"表单"→插入表单

插入文本域:单击面板上的插入文本域. 初始值=打开时显于的文字

插入密码框:在属性面板上选择密码

插入多行文本域:在类型后选择多行

插入隐藏域:对象面板→插入隐藏域

插入按钮:标签用来设置按钮上显示的文本

插入图像提交按钮=图像域:

插入文件上传按钮=文件域:

插入单选框

插入单选按钮组:Label文字说明 Value 单选按钮的值

插入复选框

菜单/插入列表:列表值→

插入跳转菜单:(

制作网页链接

URL统一资源定位器

目标:_blank在一个新的未命名的浏览器窗口中打开

_parent如果是嵌套的框架,链接会在父框架或窗口中打开,否则=_top

_top在完整的浏览器中打开

创建搜索页

运行中输入:

Inetmgr (IIS

Odbcad32 (odbc

Asp对象

Applicatipn 在给定的应用程序的所有用户间共享信息,并在服务器运行期间持久地保存数据。

集合: Contents

staticObjects

Item(变量值)=设置资料变量的值

Key(变量名称)=设置资料变量的名称

Count(变量资料的数量)=表示

Coutents集合中资料的总数量

方法: Lock

Unlock

事件: Applicatipn_Onstart

Application_OnEnd

Session 存储特定的用户会话所需的信息

属性:CodePage

LCID

SessionID

Timeout

集合:Contents

StaticObjects

方法:Abandon

事件:Session_Onstart

Session_OnEnd

Response 用来控制发送给用户的信息,包括直接发送信息给浏览器,重定位浏览器到另一个URL或设置Cookie值

属性: Buffer

CacheControl

Charset

ContentType

Expires

ExpiresAbsolute

IsClientConnected

PICS

Status

集合: Cookies

方法: AddHeader

AppendToLog

BinaryWrite

Clear

End

Flush

Redirect

Write

Request 访问任何基于HTTP请求传递的信息,常见的有从HTML表单用Post方法或Get方法传递的参数,Cookie或用户认证等。

属性: TotalBytes

集合: ClientCertificate

Cookies

Form

QueryString

ServerVaiables

方法: BinaryRead

Server 提供对服务器方法和属性的访问

属性: ScriptTimeout

集合: 无

方法: CreatObject

HTMLEncode

MapPath

URLEncode

Recordset

MoveNext 将前数据记录移至下一条

MovePrevious 将当前数据记录移至上一条

MoveFirst 将当前数据记录移至第一条

MoveLast 将当前数据记录移至最后一条

AbsolutePosition=N 将当前数据记录移至第N条

EOF 当前数据记录是否移过了最后一条(发生于向下移动时)

BOF 当前数据记录是否移过了第一条 (发生于向上移动时)

VBScript 运算符

算术运算符

指数 取负 乘法 除法 加法 减法 取模 连接 整数除法

∧ - * / ﹢ ﹣ Mod & \

比较运算符

相等 不相等 小于 大于 小于或等于 大于或等于 对象相象

=<> < > <=>=IS

逻辑运算符

逻辑非 逻辑与 逻辑或 异或 逻辑等于 逻辑蕴含

Not And Or Xor Eqv Imp

文本标记语言

HTML 代表超文本标记语言。它给出了网站或网页的基本结构。它定义了您的网站在结构方面的外观,即网站包含标题、输入、表单、表格、按钮等等。

HTML 代码

<!DOCTYPE html>
<html>
  <head>
    <title>Hello world</title>
  </head>
  <body> 
    <h1>Hello world</h1>
  </body>
</html>


您可以在此处查看 Hello world 网站的实时版本,其代码写在上面。

我们将详细讨论每一行代码,以便您能够了解每一行的想法。

<!DOCTYPE html>

这一行基本上告诉网络浏览器我们正在使用哪个HTML版本。在本例中我们是HTML5

html

这是包含我们网页的所有代码的HTML元素。换句话说,这包含了网页所需的所有结构和设置,即外部 CSS、JS、CDN 等。您可能会注意到所有内容都位于<html>和之间</html>。这是因为这样所有的内容都会在这些元素之间。<html>通常指的是开始标签,</html>通常指的是结束标签。

该元素包含了网页的所有要求。例如,如果您想添加一些外部 CSS 文件、外部 JS 文件或一些外部 CDN(这是网站的要求),那么此元素就会派上用场。如果您不了解 CSS,它用于样式目的,JS 用于功能目的,CDN 代表内容交付网络。

标题

该元素包含显示在Web 浏览器选项卡中的标题。如果您访问 Hello world 网站,您会注意到网络浏览器的选项卡中有标题。这是这些标签的主要工作。Hello world<title>...</title>

身体

该元素包含用户可见的结构。您可以想象到的上述元素可以用于我们网页的设置。主要内容进入正文部分。

h1

h1是用于标题的标题元素。如果您访问 hello world 网站,我们可以看到的 hello world 就是标题。h1不仅仅是我们拥有的标题元素。我们有一个标题元素,从 开始h1,直到 ,h6唯一的区别是h1较大,然后尺寸减小,直到 h6

如果您想了解有关 HTML 元素的更多信息,可以在此处查看。

让我们创建一些表

<table>
  <tr>
    <th>S.No.</th>
    <th>Day</th>
  </tr>
  <tr>
    <td>1</td>
    <td>Sunday</td>
  </tr>
  <tr>
    <td>2</td>
    <td>Monday</td>
  </tr>
  <tr>
    <td>3</td>
    <td>Tuesday</td>
  </tr>
  <tr>
    <td>4</td>
    <td>Wednesday</td>
  </tr>
  <tr>
    <td>5</td>
    <td>Thursday</td>
  </tr>
  <tr>
    <td>6</td>
    <td>Friday</td>
  </tr>
  <tr>
    <td>7</td>
    <td>Saturday</td>
  </tr>
</table>


table:这是用于创建表格的表格元素。
tr:表示表格行。即表的行。
td:表示表数据。即包含该表的数据。

您可以在此处查看代码的实时版本。
注意此代码必须写在body元素之间。

是时候创建 HTML 表单了

当您上网时,您可能见过一些 HTML 表单。让我们来创建我们自己的 HTML 表单。

这是代码片段。

    <form>
        Name: <input type="text" name="name"><br>
        Email: <input type="email" name="email"><br>
        <input type="submit" value="Submit">
    </form>


form:HTML 元素帮助我们创建 HTML 表单。
input:输入元素允许我们获取用户的输入。和称为HTML 属性type="email"name="email"

您可以在此处查看该网页的实时版本。
注意此代码必须写在body元素之间。

结论

总之,HTML 通过定义其结构作为网站或网页的基础。它决定了网站在标题、表单、表格、按钮等元素方面的显示方式。通过使用 HTML 标签和元素,我们可以创建结构良好且组织良好的网页。