π interface μ½λ© μμ±
interface User {
age: number;
name: string;
}
// λ³μμ νμ©ν μΈν°νμ΄μ€
var seho: User = {
age: 33,
name: 'seho'
}
// ν¨μμ μΈν°νμ΄μ€ νμ©
function getUser(user: User) {
console.log(user);
}
// Userμ μ μλ λ³μμ νμ
μ λ§μΆ°μΌ νλ€!
const capt = {
name: 'capt',
age: 11
}
getUser(capt);
// ν¨μμ μ€νμ μΈν°νμ΄μ€λ₯Ό νμ©
interface SumFuction {
(a: number, b: number): number;
}
let sum: SumFuction;
sum = function(a: number, b: number): number {
return a+b;
}
// μΈλ±μ±
interface StringArray {
[index: number]: string;
}
var arr: StringArray = ['a','b','c'];
arr[0]='10'; // 'a'
// λμ
λ리 ν¨ν΄
interface StringRegexDictionary {
[key: string]: RegExp
}
var obj: StringRegexDictionary = {
// sth: /abc/,
cssFile: /\.css$/,
jsFile: /\.js$/
}
Object.keys(obj).forEach(function(value){
})
// μΈν°νμ΄μ€ νμ₯
interface Person {
age: number;
name: string;
}
interface Developer {
age: number;
name: string;
}
interface Developer extends Person {
lag: string;
}
var captin: Developer = {
lag: 'java',
age: 10,
name: 'captin'
}