TypeScrip 의 일반적인 사례 상세 설명

6240 단어 TypeScript범 형
일반적인 정의

//    :                ,   ,            

//                    ,          
/*
function getData(value: any): any {
    return "success"
}
*/

//          
// T    (             ,      T)                    
function getData<T>(value: T):T{
    return value;
}

//         
var get = getData<string>("hello")
console.log(get)

//         
var getTwo = getData<number>(666)
console.log(getTwo)

//    :         ,                  ,         

//       
class minCla<T> {
    list: T[] = [];

    add(value: T):void {
        this.list.push(value);
    }

    min(): T {
        var minNum = this.list[0];
        for(var i=0; i<this.list.length; i++) {
            if (minNum > this.list[i]) {
                minNum = this.list[i]
            }
        }
        return minNum
    }
}

var minNum = new minCla<number>();
minNum.add(2);
minNum.add(1);
minNum.add(7);
console.log(minNum.min());  //    1


//        ascii    
var minNumTwo = new minCla<string>();
minNumTwo.add("c");
minNumTwo.add("z");
minNumTwo.add("a");
console.log(minNumTwo.min())    //   a
범용 인터페이스

//            
//    :
//         
interface Func {
    <T>(value: T): T
}

//             
var f: Func = function<T>(value: T) {
    return value;
}
f<string>("hello")
f<number>(666)

//    :
interface FuncONe {
    <T>(value: T): T
}

var f1: FuncONe = function<T>(value: T):T {
    return value;
}

f1<string>("world")
f1<number>(666)
범 형 류 를 실현 하 다

/*
1、    User ,              
2、      MysqlDb            
3、   User        MysqlDb 
*/

/*   :
class User {
    usernam: string | undefined;
    password: string | undefined;
}

class MysqlDb {
    add(user: User): boolean {
        console.log(user);
        return true;
    }
}

var u1 = new User();
u1.usernam = "pika";
u1.password = "pika"

var msql = new MysqlDb();
msql.add(u1);
*/

//                          
//    
//           
class MysqlDb <T>{
    add(info: T): boolean {
        console.log(info);
        return true;
    }
}

//     user         
class User {
    usernam: string | undefined;
    password: string | undefined;
}

var u1 = new User();
u1.usernam = "pika";
u1.password = "pika"

//         (                 )
var msql = new MysqlDb<User>();
msql.add(u1);   //           User   
종합 사례

  :
  :               Mysql MongoDb
  1: Mysql MongoDb    ,  add update delete get  
  :        、      
    :              ,            
    1、  :         ,          ,            
    2、  :    :                  
*/

//     :
//       ,        
interface DbMethod<T> {
    add(info: T): boolean;
    update(info: T, id: number): boolean;
    delete(id: number): boolean;
    get(id: number): boolean;
}

//     Mysql    ,  :                    
class MysqlDbs<T> implements DbMethod<T> {
    add(info: T): boolean {
        console.log(info);
        return true;
    }    
    
    update(info: T, id: number): boolean {
        var obj = {
            username: "xxxx",
            password: "666"
        }
        return true
    }

    delete(id: number): boolean {
        console.log("delete success");
        return true
    }
    
    get(id: number): boolean {
        var arr = [
            {username: "xxx",
            password: "xxxxx"
            }
        ];
        return true
    }
}
//   :
class Users {
    username: string | undefined;
    password: string | undefined;
};

//   Users            
var mysql = new MysqlDbs<Users>();
var u = new Users();
u.username = "xxxx"
u.password = "xxxxxx"
//           
mysql.add(u);
mysql.get(1);
mysql.update(u, 1);
mysql.delete(1)



//     MongoDb    ,  :                    
class MongoDb<T> implements DbMethod<T> {
    add(info: T): boolean {
        console.log(info);
        return true;
    }    
    
    update(info: T, id: number): boolean {
        var obj = {
            username: "xxxx",
            password: "666"
        }
        return true
    }

    delete(id: number): boolean {
        console.log("delete success");
        return true
    }
    
    get(id: number): boolean {
        var arr = [
            {username: "xxx",
            password: "xxxxx"
            }
        ];
        return true
    }
}

//   :
class Userd {
    username: string | undefined;
    password: string | undefined;
};

//   Users            
var mysql = new MongoDb<Userd>();
var u = new Userd();
u.username = "xxxx"
u.password = "xxxxxx"
//           
mysql.add(u);
mysql.get(1);
mysql.update(u, 1);
mysql.delete(1)
이 TypeScrip 의 일반적인 사례 에 대한 상세 한 설명 은 여기까지 입 니 다.더 많은 TypeScrip 의 일반적인 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 바 랍 니 다!

좋은 웹페이지 즐겨찾기