typescript 공부

수영·2022년 7월 9일
0

typescript

목록 보기
1/4

day1.

파일

index.ts

import TodoItem from "./TodoItem";

const data = [// data의 type을 지정해 주지 않았다. 아래 코드로 초기화를 진행해주면서 data라는 것의 타입을 추론한다. 
    {id : 1, task:'장보기', complete:true},
    {id : 2, task: 'TS 학습하기', complete:false},
];

console.log('My Todo List');
for (let i =0; i<data.length; i++) { //i의 type을 지정하지 않았다. (number이다.)이것 또한 type을 지정해 주지 않았지만 아래 코드로 type을 추론할 수있다.
    let todoItem = new TodoItem(data[i].id, data[i].task, data[i].complete);
    todoItem.printDetails();
}

index.js

"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const TodoItem_1 = __importDefault(require("./TodoItem"));
const data = [
    { id: 1, task: '장보기', complete: true },
    { id: 2, task: 'TS 학습하기', complete: false },
];
console.log('My Todo List');
for (let i = 0; i < data.length; i++) {
    let todoItem = new TodoItem_1.default(data[i].id, data[i].task, data[i].complete);
    todoItem.printDetails();
}

TodoItem.ts

class TodoItem {

    constructor(public id: number , public task:string, public complete: boolean){
        this.id = id;
        this.task = task;
        this.complete = complete;
    }

    printDetails(): void {
        console.log(
            `${this.id}\t${this.task}\t${this.complete ? "\t(complete": ""}`
        );
    }
}

export default TodoItem;

TodoItem.js

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
class TodoItem {
    constructor(id, task, complete) {
        this.id = id;
        this.task = task;
        this.complete = complete;
        this.id = id;
        this.task = task;
        this.complete = complete;
    }
    printDetails() {
        console.log(`${this.id}\t${this.task}\t${this.complete ? "\t(complete" : ""}`);
    }
}
exports.default = TodoItem;

0개의 댓글