typescript笔记(十四)

2020-06-01  本文已影响0人  执剑饮烈酒

对象:包含一组键值对的实例。 值可以是标量、函数、数组、对象等

1)、对象实例

例如:

let obj = {

    key : 'value1',

    key1 : 'value',

    key3 : function(){

        return '8'

    },

    key4 : ['23','34']

}

console.log(obj.key)    //value1

console.log(obj.key1)  //value

console.log(obj.key3())    //8

console.log(obj.key4)      //['23','34]

2)、类型模板

1、js定义对象:

例如:

let str = {

    str1:'123',

    str2:'456'

}

str.say = function(){ return "hello";}

2、ts定义对象:

例如:

let str = {

    str1 : 'hello',

    str2 : 'wrold',

    say : function(){}

}

str.say = function(){

    console.log('hello wrold')      //hello wrold

}

str.say()

3、鸭子类型:是动态类型的一种风格,是多态(polymorphism)的一种形式;在这种风格中,一个对象有效的语义,不是由继承自特定的类或实现特定的接口,而是由"当前方法和属性的集合"决定。

例如:

interface im{

    x : number

    y : number

}

function add(l1:im,l2:im){

    let x = l1.x+l2.x;

    let y = l1.y + l2.y;

    return {x:x,y:y}

}

let f = add({x:3,y:4},{x:5,y:1})

console.log(f)      //{ x: 8, y: 5 }

上一篇下一篇

猜你喜欢

热点阅读