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

贵阳企业网站设计制作哪个网站可以做曝光台

贵阳企业网站设计制作,哪个网站可以做曝光台,怎么做流量网站,上海seo培训中心前言#xff1a; 因为在写前端的时候#xff0c;发现很多UI组件的语法都已经开始使用TS语法#xff0c;不学习TS根本看不到懂#xff0c;所以简单的学一下TS语法。为了看UI组件的简单代码#xff0c;不至于一脸懵。 一、安装node 对于windows来讲#xff0c;node版本高…前言 因为在写前端的时候发现很多UI组件的语法都已经开始使用TS语法不学习TS根本看不到懂所以简单的学一下TS语法。为了看UI组件的简单代码不至于一脸懵。 一、安装node 对于windows来讲node版本高点还好对于linuxcentos7来讲尽量使用node16或者node18版本太高linux的动态库不支持需要升级动态库 E:\vuecode\练习node -v v18.12.1 二、安装typescript E:\vuecode\练习npm -g install typescript added 1 package in 672ms#查看版本 E:\vuecode\练习tsc -v Version 5.3.3三、基本语法 1.数据类型 1.1 声明变量 ts最大的特点就是声明了数据类型。样例代码如下 声明数字类型和字符串类型 let n1: number n1 10let s1: string s1 hello worldconsole.log(n1,s1)将ts文件编译成js文件并运行js文件 E:\vuecode\练习tsc test1.ts E:\vuecode\练习node test1.js 10 hello world1.2 自动识别类型 这里没有声明变量的类型在将字符串赋值给n1的时候ts的编译器检测出了语法问题 let n1 10 console.log(n1)n1 hello world console.log(n1)E:\vuecode\练习tsc test1.ts test1.ts:4:1 - error TS2322: Type string is not assignable to type number.4 n1 hello world~~2.特殊数据类型 2.1 any 任意类型 let a: any 1 console.log(a)a hello world console.log(a)a true console.log(a)a [1,2,3,4] console.log(a)执行结果如下 E:\vuecode\练习node test1.js 1 hello world true [ 1, 2, 3, 4 ]开发中不建议使用any类型 2.2 联合类型 限定了a的取值范围 let a: 1 | 2 a 1 console.log(a)a 2 console.log(a)#这里会报错不能将3赋值给a let a: 1 | 2 不能将类型“3”分配给类型“1 | 2”。ts(2322) a 3 console.log(a)限定a的赋值类型范围 let a: number | string a 1 a hello#这样超出了a的取值类型范围 a true2.3 unknown let a: unknown a hello console.log(a)a 1 console.log(a)a true console.log(a)unknow的二次赋值 let a: unknown a hello此时将unknown类型的a 赋值给b就不可以了。因为类型不匹配 let b: string b a解决办法有两种 1.类型断言 b a as string2.声明变量的类型 b stringa2.4 void void表示空一般用于函数没有返回值 function test(): void {console.log(111) }2.5 never 什么值都没有空也不会返回 3.对应js的类型的ts类型 3.1 object object表示js中的对象在开发中object使用的比较少。因为限制变量是不是对象的情况比较少主要是限制对象中的属性的类型以及属性的数量。 3.1.1 基本定义 不限制对象中属性的数量以及属性值的类型 写法1 let o1: {} #或者 let o1: object o1 {name: zhangsan,age: 20} console.log(o1)写法2 表示对象中可以有任意string类型的key值的类型为任意 let b: {[anyname: string]: any} b {name: zhangsan,age: 20, gender:男} console.log(b)3.1.2 限定对象的属性数量 正确赋值 let a: {name: string} a {name: zhangsan} console.log(a)错误赋值因为对象限制了属性只有name let a: {name: string} a {name: zhangsan,age: 20} 3.1.3 设定可选属性 有这种场景设定了对象中有多个属性一个必须的其他的可以不传递。也可以传递。 其中属性名后边的 “?” 就是设定属性为可选属性 let o1: {name: string,age?:number,gender?:string} o1 {name: zhangsan} console.log(o1)o1 {name: lisi,age: 20} console.log(o1)o1 {name: wangwu,gender:boy} console.log(o1)o1 {name:张无忌,age: 100, gender:boy} console.log(o1)执行结果如下 E:\vuecode\练习tsc test1.ts E:\vuecode\练习node test1.js { name: zhangsan } { name: lisi, age: 20 } { name: wangwu, gender: boy } { name: 张无忌, age: 100, gender: boy }3.1.4 设定固定属性其余属性不定长 let o1: {name: string,[anyname: string]: any} o1 {name: zhangsan,age: 20 ,gender: girl,class: 3} console.log(o1)E:\vuecode\练习tsc test1.ts E:\vuecode\练习node test1.js { name: zhangsan, age: 20, gender: girl, class: 3 3.2 数组 定义方式一 let a1: number[] a1 [1,2,3,4,5] console.log(a1) 定义方式二 let a2: Arraynumber a2 [1,2,3,4,5] console.log(a2)3.2 元组 元组和数组的区别是元组的的长度是固定的 let t1: [string,number] t1 [zhangsan,10]4.type关键字 type的作用主要是给数据类型起一个别名 例如 type num number let n1: num 10console.log(n1)5.反引号 反引号是ES6中的 模板字符串。 这是比较常用的一种在字符串中插入变量 let name1 zhangsan let age 20console.log(我的名字叫${name1},我${age}岁了)四、泛型 1.定义使用泛型 在定义函数或者是类时对于类型不明确的时候就就可以使用泛型。例如 function testT(content: T): T{return content }解释 定义函数test的时候不能确定content参数的类型是什么类型这时候使用泛型 第一个T 是定义了一个泛型T 第二个T 是定义content参数是一个泛型类型的参数 第三个T 是定义 返回值的类型是T类型 2.使用 2.1 方式1 利用ts的对数据类型的自动推断功能进行传值将鼠标分别放在r1,r2,r3,r4的上边可以看到它们的类型。也就说你传递的什么类型的值就返回什么类型的值 function testT(content: T): T{return content }let r1 test(10) let r2 test(hello) let r3 test([1,2,3,hello]) let r4 test({name:zhangsan})2.2 方式2: 当有时候当给函数传递的类型比较复杂时候TS无法自动推断出类型时需要手动声明传递的参数的类型代码如下 function testT(content: T): T{return content }向test函数声明传递的参数为string let r1 teststring(hello)向test函数声明传递的参数为一个内容包含数字和字符串的数组 let r2 test(number|string)[]([1,2,3,hello])向test函数声明传递的参数为一个只有name和age的对象 let r3 test{name:string,age:number}({name: zhangsan,age: 20})
http://wiki.neutronadmin.com/news/436506/

相关文章:

  • 德州力点科技 网站建设北京 网站建设|小程序|软件开发|app开发公司
  • 四博网站备案wordpress 登录小工具
  • 迁安建设局网站网站建设当前位置图标
  • 子域名网址查询百度一键优化
  • dede织梦网站wordpress跳转外部链接
  • 国外网站怎么做引流在建设局网站上怎么样总监解锁
  • 帝国cms网站公告怎么做wordpress安全设置方法
  • 长春移动端网站设计随州网站建设公司
  • 洞口建设局网站WordPress小工具可以做什么
  • 网站如何实现多语言asp.net 网站开发架构
  • 巴中微信网站建设苏州大型网站建设公司
  • 网站建设方案报价表天津专业网站制作流程优势
  • 做非洲外贸的网站微信公众号入口
  • 如何把自己做的网站放到微信上敏捷开发平台
  • 杭州网站推广大全驻马店做网站推广
  • 安阳建设网站哪家好可信的网站建设
  • 天津建设招标网站首页建网站 主流软件
  • 电子方案网站建设方案网页生成pdf
  • 山东网站建设代理百度网站评分
  • 深圳分销网站设计网页版qq注册
  • 网站cronwordpress文章发布时间
  • html如果制作一个内容多的网站长沙做手机网站建设
  • 网站制作需要多少费用用电信固定IP做网站
  • 手机图片网站源码移动端app是什么意思
  • 网站图片水印西安百度网站快速优化
  • 一个好的网站有什么标准linux目录不可写 wordpress
  • 大良营销网站建设机构wordpress欢迎页面模板下载
  • 网站改版死链接电商网站的模式
  • 做网站需要的图片iis 如何搭建网站
  • 网站制作定制图网站 移动化