网赌网站怎么做在线制作生成器

bicheng/2026/1/22 8:20:01/文章来源:
网赌网站怎么做,在线制作生成器,中国建设法律法规网官方网站,厦门网站建设680文章目录 前言 二、TypeScript的优势体现在哪里#xff1f; 1、执行时间上的区别 2、基础数据类型区别 3、TS优势 三、TypeScript的关键特性 四、TypeScript的类型系统 1、什么是类型注释#xff1f; 2、类型系统核心 - 常用类型 1#xff09; 基本类型#xff0…文章目录 前言 二、TypeScript的优势体现在哪里 1、执行时间上的区别 2、基础数据类型区别 3、TS优势 三、TypeScript的关键特性 四、TypeScript的类型系统 1、什么是类型注释 2、类型系统核心 - 常用类型 1 基本类型原始类型     数字Number  字符串String 布尔值Boolean Null 和 Undefined  Symbol 2 对象类型 接口Interfaces 类Classes 数组Arrays 元组Tuples 3复合类型 4特殊类型 5类型操作 6泛型Generics 疑问 1、--strictNullChecks标志是什么 2、--strictNullChecks标志默认是启动的吗如何关闭 总结 前言 提示该文章主要记录一下TypeScript学习笔记及使用体验会不断丰富更新学习及使用过程中遇到的情况 一、TypeScript是什么 TypeScript 是一种由 Microsoft 开发的开源语言。TypeScript与JavaScript有着不同寻常的关系。它是 JavaScript 的一个超集添加了可选的静态类型和基于类的面向对象编程。 TypeScript 提供了JavaScript的所有功能并且额外增加了类型系统。 简单可以概述为TypeScript简称TS是 JavaScript简称JS的超集JS 有的 TS 都有 TypeScript Type JavaScript在 JS 基础之上为 JS 添加了类型支持   二、TypeScript的优势体现在哪里 1、JS 代码中绝大部分错误都是 类型 错误Uncaught Type Error 2、在VSCode中会先编译代码后执行代码 1、执行时间上的区别 在我们使用VSCode开发过程中不难发现JS 属于动态类型的编程语言是在执行期对代码做类型检查这样开发过程中就需要等到代码真正去执行的时候才能发现错误这时候再去定位并修改bug相对来说就有点晚了还会耽误很多时间。 然而经过学习使用会发现TS属于静态类型的编程语言是在编译期做类型检查这时在代码编译的时候代码执行前就会发现错误这样可以在编写代码的同时就发现代码中的错误它可以高亮代码中的意外行为从而降低出现错误的可能性。 2、基础数据类型区别 TS 中包含了JS中所有的数据类型同时新增了特定类型在TS中常用基础类型可细分为两类 JS基础数据类型TS包含 原始类型number/string/boolean/null/undefined/symbol 对象类型object包括数组、对象、函数等对象 TS新增数据类型 联合类型、自定义类型类型别名、接口、元组、字面量类型、枚举、void、any 等。 3、TS优势 所有的 JS 代码都是 TS 代码 开发过程中任何位置的代码都会有相应的 代码提示 增强了开发体验 可在代码编写时 显示标记出代码中的意外行为 降低出现错误的可能性 提升开发效率 丰富的 类型系统 提升了代码的可维护性使得 重构代码更加容易 类型推断 机制 不需要 在代码中的 每个地方都显示标注类型 支持 最新的 ECMAScript 语法 支持 多种框架的使用 三、TypeScript的关键特性 以下是一些 TS 的关键特性 静态类型检查在代码运行之前TS编译器会检查类型错误。这有助于在早期发现潜在的问题。类型推断TS 能够根据上下文自动推断变量的类型减少了必须显式声明类型的情况。类型注解可以在变量、函数参数和函数返回值上添加类型注解以明确它们的类型。接口和类TS支持面向对象编程的特性如类、接口和继承。枚举类型TS提供了枚举类型这在 JS 中是没有的可以用来定义一组命名常量。泛型泛型允许用户创建可重用的组件这些组件可以支持多种类型而不会丢失其原有类型。模块化TS 支持模块可以帮助组织和维护大型代码库。工具支持TS有很好的编辑器支持比如自动完成、导航到定义和重构支持。 四、TypeScript的类型系统 TS的类型系统是该语言的核心特性之一它在 JS的基础上添加了类型注释和静态类型检查。这意味着你可以在编码阶段指定变量、函数参数和返回值的类型这样 TS 编译器就可以在代码运行之前检测到潜在的类型错误。 1、什么是类型注释 在TS中类型注释是一种语法用于明确变量、函数参数、返回值等的类型。以一种轻量级的方式来记录函数或变量的期望类型。类型注释可以帮助开发者了解代码中变量的预期类型并且能够让 TypeScript 编译器在编译过程中进行类型检查以确保类型的一致性和正确性。 类型注释的基本语法是在变量名或函数参数名后面加上冒号:和类型名称。下面是一些基本的类型注释示例 let name: string Alice; let age: number 28; let isActive: boolean true;// 函数参数和返回值的类型注释 function greet(name: string): string {return Hello, name !; }const greet0 (name: string): string {return Hello, name !; }// 对象类型注释 let user: { name: string; age: number } {name: Bob,age: 25 };// 数组类型注释 let numbers: number[] [1, 2, 3, 4, 5]; let names: Arraystring [Alice, Bob, Charlie];// 元组类型注释 let tuple: [string, number] [Alice, 30]; 作用为变量添加类型约束。比如上述例子中name 是一个类型为 string 的变量age 是一个类型为 number 的变量isActive 是一个类型为 boolean 的变量 函数 greet/greet0接收一个 string 类型的参数并返回一个 string 类型的值 对象 user 有两个属性分别为 string 类型的 name 和 number 类型的 age 数组 numbers 和 names 分别包含 number 类型和 string 类型的元素 元组 tuple 包含一个 string 类型和一个 number 类型的元素⚠️约定了什么类型就只能给变量赋值该类型的值否则就会报错。 类型注释不是 TS 的一个必须特性因为 TS 有很强的类型推断能力。但是在很多情况下明确指定类型注释可以提高代码的可读性和可维护性尤其是在复杂的项目中或者当函数的意图不是很明显时。 当然类型注释不是JS的一部分它们在TS代码被编译成JS时会被移除。这意味着它们不会影响生成的JS代码的性能。它们的主要目的是在开发阶段提供类型校验和编辑器支持。 2、类型系统核心 - 常用类型 TS 作为 JS的超集引入了静态类型系统。在 TS 中类型可以大致归纳为以下几类 1 基本类型原始类型     在TS中基本类型也称为原始类型是构建其他类型的基石。下面是TS中的一些基本类型这些类型完全按照 JS 中类型的名称来书写。  数字Number         在TS中不管是整数还是浮点数统一使用number类型表示。它还支持十进制、十六进制、二进制和八进制字面量。 // 数字Number类型 let decimal: number 6; let hex: number 0xf00d; let binary: number 0b1010; let octal: number 0o744; 字符串String        字符串数据用于表示文本数据可以是单引号(), 双引号()或模板字符串()。TS中的文本数据类型是string。 // 字符串String let name: string letu; name 樂途; let sentence: string Hello, my name is ${ name }.; 布尔值Boolean       布尔值是最基本的数据类型在TS中用boolean表示它表示逻辑上的真true或假false。只有两个值true和false它通常用于控制条件语句如if语句。 // 布尔值Boolean let isDone: boolean false; isDone true Null 和 Undefined         在TypeScript中null和undefined是所有类型的子类型。这意味着你可以将null和undefined赋值给像number或string这样的类型。但是当你使用--strictNullChecks标志时null和undefined只能赋给any和它们各自的类型这意味着undefined只能赋给undefined类型null只能赋给null类型 Undefined:undefined类型代表未定义的值。在JavaScript中如果你声明一个变量但没有给它赋值那么它的值就是undefined。 let notAssigned: undefined; // 变量没有赋值只定义了类型为undefined console.log(notAssigned); // 输出 undefined在 TS 中undefined 是一种类型它只有一个值即 undefined。它通常用于未初始化的变量。通常不会直接使用undefined类型因为这限制了变量只能被赋予undefined值。 let und: undefined undefined;Null null类型表示没有任何对象值。在JavaScript中null通常被用来表示一个意料之中的缺失值。 let emptyValue: null; // 变量被赋予null类型 emptyValue null; // 合法的赋值 TS中和undefined类似null 也是一种类型它只有一个值即 null。它通常用于表示某个对象是“无”的。 let n: null null;⚠️直接使用null类型不是特别有用因为这样变量除了null之外不能赋予任何其它值。但是你可以通过联合类型来指定一个变量可能是null后续联合类型模块会详细介绍。 当启用--strictNullChecks时null和undefined的行为会更加严格。任何不显式包含null或undefined的类型都不能被赋予这些值。 let strictString: string; strictString null; // 错误不能将类型“null”分配给类型“string” strictString undefined; // 错误不能将类型“undefined”分配给类型“string” Symbol symbol类型是ECMAScript 2015的新特性ES6 引入的新原始数据类型symbol是不可改变且唯一的。常用来作为对象属性的键用于创建唯一的标识符。。 let sym1 Symbol(); let sym2 Symbol(key); // 可选的字符串keysymbol类型的值是通过Symbol构造函数创建的。每个symbol都是唯一的。即使你用相同的字符串来创建两个symbol它们也是不相等的。 let sym3 Symbol(key); let sym4 Symbol(key); console.log(sym3 sym4); // 输出 falsesymbol类型的主要用途之一是作为对象属性的键这些属性不会与其他属性冲突并且不会被通常的方法如Object.keys或for...in循环枚举到。 let obj {[sym1]: value }; console.log(obj[sym1]); // valueTS中的基本类型是构建强类型代码的基础它们提供了丰富的类型环境帮助开发者编写更安全、更可维护的代码。 2 对象类型 TypeScript 中的对象类型使得开发者可以定义复杂的数据结构。下面是对每个对象类型的详细解析和示例 接口Interfaces        接口在 TS中用于定义对象的形状它指定了对象可以有哪些属性和方法以及它们的类型。 // 给users定义的包含name、age、talk属性的IPerson接口 interface IPerson {name: string;age: number;talk: () void;}let users: IPerson {name: 樂途,age: 28,talk() {console.log(Hello, my name is ${this.name});}};console.log(users.talk()) // 输出: Hello, my name is 樂途类Classes        类是定义对象的模板可以包含属性和方法。TS支持基于类的面向对象编程。        涉及点比较多梳理中…… 数组Arrays         数组类型定义同一类型元素的集合。可以使用元素类型后跟 [] 或使用泛型数组类型 Array元素类型。 let list: number[] [1, 2, 3]; // 或者使用泛型数组类型 let list: Arraynumber [1, 2, 3];元组Tuples        元组类型允许表示一个已知元素数量和类型的数组各元素的类型不必相同。 let x: [string, number]; x [hello, 10]; // true x [10, hello]; // false枚举Enums        枚举类型是对 JS 标准数据类型的一个补充是一种特殊的类它可以的方便地处理一组相关的常量值用于定义一组命名常量。 enum Color {Red, Green, Blue} let c: Color Color.Green;3复合类型 联合类型Union Types允许一个值是几种类型之一。交叉类型Intersection Types组合多个类型成为一个类型。类型别名Type Aliases提供类型的新名字可以是基本类型、联合类型、交叉类型等的别名。 4特殊类型 any: 可以是任何类型相当于逃避类型检查。void空类型与 any 类型相反它表示没有任何类型。当一个函数没有返回值时你通常会看到其返回值类型是 void。unknown: 表示任何类型的值比 any 更安全因为它不允许你做太多的操作除非你类型缩小type narrowing。never: 表示永远不会有值的类型常用于那些总是会抛出异常或根本就不会有返回值的函数表达式或箭头函数表达式的返回值类型。object: 表示非原始类型也就是除 numberstringbooleansymbolnull 或 undefined 之外的类型。 5类型操作 类型断言Type Assertions允许你手动指定一个值的类型。类型守卫Type Guards运行时检查类型确保在特定块中变量属于某种特定类型。映射类型Mapped Types基于旧类型创建新类型的一种方式。条件类型Conditional Types根据条件表达式选择类型。 6泛型Generics 允许在定义函数、接口或类的时候不预先指定具体的类型而在使用的时候再指定类型的一种特性。 TypeScript 的类型系统非常强大和灵活允许开发者以几乎和静态类型语言一样的方式来确保代码的安全性和可维护性。 疑问 1、--strictNullChecks标志是什么 --strictNullChecks 是 TypeScript 编译器的一个选项。当这个标志被启用时编译器会更加严格地检查 null 和 undefined 值以避免可能的运行时错误。 在没有启用 --strictNullChecks 的情况下所有类型都隐式地包含 null 和 undefined 值。这意味着如果你有一个类型为 string 的变量那么它实际上可以被赋予 string、null 或 undefined 值。 let myString: string;myString null; // 没有错误即使在没有 --strictNullChecks 的情况下 myString undefined; // 没有错误然而当启用了 --strictNullChecks 后null 和 undefined 只能赋给它们各自的类型和 any 类型或者是明确声明为可选的类型。这样做可以避免很多常见的错误比如在一个对象上调用方法之前没有正确地检查对象是否为 null。 let myString: string;myString null; // 错误: Type null is not assignable to type string. myString undefined; // 错误: Type undefined is not assignable to type string.如果你想要一个变量既可以是 string 类型也可以是 null 或 undefined你需要使用联合类型明确声明  let myString: string | null | undefined;myString null; // 正确 myString undefined; // 正确启用 --strictNullChecks 是一个很好的实践因为它可以帮助开发者在编译阶段捕获可能的空值错误而不是在代码运行时才发现 2、--strictNullChecks标志默认是启动的吗如何关闭 截至我知识更新的时间点2023年在 TypeScript 中--strictNullChecks 标志默认是关闭的。如果你创建一个新的 TypeScript 项目这个选项不会自动启用你需要在 tsconfig.json 文件中明确地设置它。 要启用 --strictNullChecks你需要在项目的 tsconfig.json 文件中设置 compilerOptions 部分如下所示 {compilerOptions: {strictNullChecks: true} }如果你想要关闭这个标志假设它已经被启用你需要在 tsconfig.json 中将它设置为 false {compilerOptions: {strictNullChecks: false} }注意关闭 --strictNullChecks 可能会使你的代码更容易出现运行时错误因为你可能会遗漏对 null 和 undefined 的必要检查。然而在某些情况下例如当你迁移旧的 JavaScript 项目到 TypeScript 时你可能需要暂时关闭这个选项以便逐步解决类型问题。  总结 TypeScript是一种由Microsoft开发的开源编程语言它是JavaScript的一个超集主要提供了类型系统和对ES6的支持。TypeScript设计的目的是开发大型应用程序并且能够编译成纯JavaScript。下面是TypeScript官方文档的一些关键点总结 类型系统TypeScript的核心特性之一是它的类型系统。类型系统允许你在编写代码时定义变量、函数参数和对象属性的类型。这有助于捕捉错误提供代码自动完成和智能提示等功能。类型推断TypeScript能够在没有明确类型注释的情况下推断出表达式的类型这称为“类型推断”。接口接口是TypeScript的一个重要概念用于定义对象的形状包括它应该包含哪些属性和方法。类TypeScript支持基于类的面向对象编程。你可以创建类、继承和实现接口这些都是静态类型检查的。泛型泛型允许你创建可重用的组件这些组件可以支持多种类型而不会丢失其原始类型。枚举枚举是一种特殊的类型它允许你定义一组命名的常量。模块TypeScript支持模块这意味着你可以将代码分割成可重用的模块。命名空间命名空间是另一种在TypeScript中组织代码的方法它们可以帮助你防止全局作用域的污染。装饰器装饰器是一种特殊类型的声明它可以被附加到类声明、方法、访问器、属性或参数上。装饰器使用expression这种形式expression必须求值为一个函数它会在运行时被调用。工具链TypeScript提供了一系列工具包括编译器tsc和语言服务它们可以帮助你编译、检查和重构TypeScript代码。编译器选项TypeScript编译器tsconfig.json文件中有许多配置选项允许你定制编译过程。与JavaScript的互操作性**TypeScript旨在与现有的JavaScript代码库和框架兼容。你可以在TypeScript项目中使用JavaScript代码并且可以逐步迁移JavaScript代码到TypeScript。 TypeScript官方文档包含了从基础到高级的所有概念还有关于如何使用TypeScript的详细指南以及如何配置和管理TypeScript项目的信息。这些文档是学习和使用TypeScript的重要资源。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/87914.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站建设外文版政策文件郴州网站seo外包

问题 如下图所示,我在word中插入了一个文本框(为了插图),然后文本框内有引用,结果endnote自动将文本框内的引用优先排序,变成文献[1]了,而事实上应该是[31]。请问如何能让文本框内的排序也自动…

郑州网站建设公司e00平面设计 网站推荐

原标题:并行驰骋,放“码”来战!看先导杯大奖赛上山大风采近日,山东大学计算机科学与技术学院2018级硕士研究生杨林、2020级硕士研究生李威宇组成的团队获得中科院“先导杯”并行应用大赛人工智能赛“大规模物体检测”和“神经网络…

只有域名可以做网站吗自助建站的优点与缺点

在这个科技日新月异的时代,AI已成为我们生活中不可或缺的一部分。它不仅改变了我们的生活方式,更让我们对未来充满期待。说起酷开系统中智慧AI的强大,着实让人叹为观止。无论是语音识别、数据整理还是语言处理,智慧AI都在不断地突…

查邮箱注册的网站柳州做网站的公司

以下解题思路来自代码随想录以及官方题解。 文章目录 344.反转字符串541.反转字符串||151.反转字符串中的单词28.找出字符串中第一个匹配项的下标459.重复的字符串 344.反转字符串 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给…

广东省建设执业资格注册中心网站方舟未来网站建设

文章目录 简介功能特性设计图实现功能开源链接 简介 平时总有一种需求,就是我在调试树莓派的时候,经常要在pc电脑和开发板之间来回操作,因此就需要两套键盘和鼠标,但是我的桌子实在是太小了,两套键鼠不能并排放置&…

连云港做网站哪家好郑州电力高等专科学校招生官网

题目描述 给定一个有向图(不一定连通),有N个顶点,M条边,顶点从1..N依次编号,求出字典序最小的深度优先搜索顺序。 输入格式 第1行:2个整数,N(1≤N≤200)和M(2≤M≤500…

网站建设小江网页设计深圳工程招标信息网

10月25日上午,国家数据局正式挂牌成立,这标志着我国数字经济发展将进入新的发展阶段,也将有力促进数据要素技术创新、开发利用和有效治理,以数据强国支撑数字中国的建设。伴随数据作为企业新的生产要素的意义不断凸显,…

把网站做进微信公众号甘肃兴城建设有限公司网站

前言 大家好晚上好,现在AI技术的发展,它已经渗透到我们生活的各个层面。对于普通人来说,理解并有效利用AI技术不仅能增强个人竞争力,还能在日常生活中带来便利。无论是提高工作效率,还是优化日常任务,AI工…

网站标题的写法企业网站的优化和推广方法

背景由于生产环境的服务器并不会安装桌面环境,简单操作的图形化安装也不适合批量部署安装。因此,我还是更倾向于在命令下安装配置KVM虚拟机。结合了一些资料和个人使用的状况,我大致列出了一些基本和常用的使用方法。 安装配置一、环境介绍操…

花钱也可以哪些网站可以做推广广告网站挂马处理百度快照

在深度学习中,我们常常选用sigmoid函数作为激活函数。sigmoid函数的具体形式如下: f(x)11e−xf(x)=\frac{1}{1+e^{-x}}曲线表示为: 再画大一点,取x区间更大一些,则为: 显然从图像上看,sigmoid函…

南京专业网站制作公司有哪些西安市城乡建设网官方网站

力扣题目链接 having where 区别 having子句用于分组后筛选,where子句用于行条件筛选 having一般都是配合group by 和聚合函数一起出现如(count(),sum(),avg(),max(),min()) where条件子句中不能使用聚集函数,而having子句就可以。 having只能用在group…

建网站模板社交源码

下面是我在“小文论坛”发的关于PDG转PDF的办法转贴请注明出自“小文论坛”.点击链接访问小文论坛前些天在坛子里看到一位朋友发的通过代理登录教育网超星的办法,试了试,还不错,下下来了几本吉他方面和计算机方面的书。但下下来的书是加密保存的,当该用户过期后又怎…

iis添加网站 别名wordpress链接默认是什么样子

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、系统设计2.1 功能模块设计2.1.1 数据中心模块2.1.2 菜品分类模块2.1.3 菜品档案模块2.1.4 菜品订单模块2.1.5 菜品收藏模块2.1.6 收货地址模块 2.2 可行性分析2.3 用例分析2.4 实体类设计2.4.1 菜品分类模块2.4.2 菜品档案模块2.4.3…

一级a做片性视频网站西部网站邮箱登录

概念阐述 内存溢出(Memory Overflow)和内存泄漏(Memory Leak)是与计算机程序中的内存管理相关的问题,它们描述了不同的情况。 内存溢出是指程序在申请内存时,要求的内存超出了系统所能提供的可用内存资源…

wap 网站网站做pc

本系列文章主要针对ROS机器人常使用的未知环境自主探索功能包explore_lite展开全源码的详细解析,并进行概括总结。 本系列文章共包含六篇文章,前五篇文章主要介绍explore_lite功能包中 explore.cpp、costmap_tools.h、frontier_search.cpp、costmap_clie…

企业网站设计制作服务深圳画册设计龙华

总结性博客作业 第一次作业 (1)从多线程的协同和同步控制方面,分析和总结自己三次作业的设计策略。 第一次作业为单电梯傻瓜调度,可以采用生产者——消费者模型,是一个有一个生产者(标准输入电梯请求),一个…

网站建设方案书纯文字建设网站需要营业执照

麒麟系统—— openKylin 安装 Nginx 一、准备工作1. 确保麒麟系统 openKylin 已经安装完毕。 二、下载 nginx三、解压与运行解压检查与编译安装编译运行 四、配置加入到服务中加入环境变量nginx 配置文件 五、常用命令 Nginx 是一款高性能的 HTTP 和反向代理服务器&#xff0c…

深圳个性化网站建设公司电话重庆品牌型网站建设多少钱

一、Docker基础 1. docker的安装 先在虚拟机中安装Linux。 VirtualBox 虚拟机 在CentOS中安装Docker 安装Docker 2. 快速入门 部署 mysql docker部署mysql 3. 常见命令 4. 命令别名 5. 数据卷挂载 6. 本地目录挂载 7. Dokerfile语法 8. 自定义镜像 9. 容器网络互连 …

男女直接做视频教学视频网站网站建设及解决方案

1. 两种异常处理机制 1.1 使用 throw 关键字手动抛出异常 使用throw关键字抛出异常,代码会的显得简单明了 如下图所示 1.2 使用 try-catch 捕获异常 使用try-catch进行捕获异常,往往会使代码变得更加笼统,层层包裹 如下图所示 2. 自定义…

微信网站开发流程公众号怎么制作链接

众所周知,树莓派在十岁生日的庆典上,已经蜕变为全球首屈一指的微型电脑品牌,为全球的数千万开发者提供了离奇的可能性。充满乐趣和惊喜的名字——“树莓派”,取自各种水果的名字,回顾我们可以找到苹果,杏子…