typeScript(4)-引用类型

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_30109365/article/details/82856338

js对象

let jspang = {
    name:'胖',
    website:'jspang.com',
    age:18,
    saySometing:function(){
        console.log('为了前端')
    }
}
console.log(jspang.name)
jspang.saySometing()

在TypeScript中也给我们提供了一些引用类型,例如:Array(数组)、String(字符串)、Date(日期对象)、RegExp(正则表达式)等。我们将用几节课的时间来学习这些用用类型,以及其中封装的常用方法和属性。

1.数组

var 和let 在es5,es6中分别声明是局部变量和全局变量

let arr1:number[ ]     //声明一个数值类型的数组
let arr2:Array<string>  //声明一个字符串类型的数组

二种声明数组的方式

第一:直接赋值

//定义一个空数组,数组容量为0
let arr1:number[] = [] 
//定义一个数组时,直接给数组赋值
let arr2:number[] = [1,2,3,4,5]
//定义数组 的同事给数组赋值
let arr3:Array<string> = ['pang','技术','胖']
let arr4:Array<boolean> = [ true,false,false]

//报错! 必须存储number类型的数据
let arr5:number[] = [1,2,true]

需要注意的是,在TypeScript中指定数据类型的数组只能存储同一类型的数组元素。

第二:构造函数赋值法

 let arr1:number[] = new Array()
let ara2:number[] = new Array(1,2,3,4,5)
let arr3:Array<string> = new Array('pang','技术','胖')
let arr4:Array<boolean> = new Array(true,false,false)

例外存在一个叫 : ‘元祖’ 一个特殊数组

//声明一个元祖类型
let x : [string,number]
//正确的初始化
x = ['hello',10]
//错误的初始化方法
x = [10,'hello']

2.字符串

let jspang:string = 'ma'
let jspanga:String = new String("jsma")
console.log(jspang)        =》  ma
console.log(jspanga)     =》[String: jsma']
console.log(jspang.lenght)        =》  2
console.log(jspanga)     =》4

3.日期

不传值

let d:Date = new Date()
console.log(d)     =》  2018-09-06T06:48:12.504Z

传递一个整数

let d:Date = new Date(1000)
let da:Date = new Date(2000)
console.log(d)  //1970-01-01T00:00:01.000Z
console.log(da) //1970-01-01T00:00:02.000Z

传递一个字符串

let d1:Date = new Date('2018/09/06 05:30:00')
let d2:Date = new Date('2018-09-06 05:30:00')
let d3:Date = new Date('2018-09-06T05:30:00')
console.log(d1)
console.log(d2)
console.log(d3)     //输出都一样  2018-07-04T21:04:50.000Z

传递表示年月日时分秒的变量

let d:Date = new Date(year,month,day,hours,minutes,seconds,ms);
  1. year 表示年份,4位数字。
  2. month表示月份,数值是0(1月)~11(12月)之间的整数。
  3. day表示日期。数值是1~31之间的整数。
  4. hours 表示小时,数值是0-23之间的整数.
  5. minutes表示分钟数,数值是0~59之间的整数。
  6. seconds 表示秒数,数值是0~59之间的整数。
  7. ms 表示毫秒数,数值是0~999之间的整数。

4.正则表达式

let reg1:RegExp = new RegExp("js")     ==    let reg3:RegExp = /jspang/

let reg2:RegExp = new RegExp("js",'gi')    ==    let reg4:RegExp = /jspang/gi

//表示字符串规则里含有js

RegExp中的常用方法
RegExp对象包含两个方法:test( )和exec( ),功能基本相似,用于测试字符串匹配

  • test(string) :在字符串中查找是否存在指定的正则表达式并返回布尔值,如果存在则返回 true,不存在则返回 false。
  • exec(string) : 用于在字符串中查找指定正则表达式,如果 exec() 方法执行成功,则返回包含该查找字符串的相关信息数组。如果执行失败,则返回 null。
let reg1:RegExp =  /jspang/i
let website:string = 'jspang.com'
let result:boolean = reg1.test(website)
console.log(result)    //true

let reg1:RegExp =  /jspang/i
let website:string = 'jspang.com'
console.log(reg1.exec(website))
//[ 'jspang', index: 0, input: 'jspang.com' ]

对正则不是很了解,可以看看:
http://www.runoob.com/regexp/regexp-tutorial.html

猜你喜欢

转载自blog.csdn.net/qq_30109365/article/details/82856338