Web Dev Log
Typescript 기본 문법 본문
// 1.프로그램 설치
// 2. 환경설정
// 3. 변수 선언
var a = 1; // 전연변수
let b= 2; // 지역변수
const c = 3 // 상수
// 4. 타입지정 형지정
var aa : number = 1;
var bb : string = 'aa';
var cc : boolean = true;
// 5. 튜플
let aaa : [number, string ];
// 6. enum 열거형
enum days { Sunday, monday, thusday };
console.log( days.Sunday );
enum days2 {sunday = 1, monday = 2 };
console.log( days.Sunday );
console.log( days[1] );
// 7. any 형 - 변수에 어떤 값이든 허용
var kk : any = "123";
// 8. 형 변환
let strValue;
strValue = 1234;
( < string > strValue).length; // 주로 사용
(strValue as string).length;
// 9. type inference , 형 자동 지정
let a = 1; // 자동 숫자형으로
a = 'asd'; // 이미 숫자옇으로 지정해서 문자형 값 대입 안됨
// 10. function typeing 함수 타입핑 - 함 수이의 인자와 리턴에 형지정
function f ( arg : number ) : string {
return ' I got ' + arg;
}
// 11. 함수 type
// 함수 typeing 은 함수의 파라메터 형과 리턴 형을 지정하는 것
// 함수 type 은 타입입니다.
let pp : string;
// 함수 type 은 변수에 형을 지정하듯 하나의 완전한 타입니다.
var ff = function() {
return a;
}
function ff2 ( a: number ) : number {
return a;
}
// 함수의 형을 그대로 지정
let myFunc : (a:number) => number = ff2;
// 12. Generic - 함ㅛㅜ의 타ㄹ입과 상관없이 여러 데이터 타입으로 사용 가능한것
function identity < T > ( arg : T ) : t {
return arg;
}
identity < number > (123);
identity < string > ( 'as3' );
function oop <T> ( arg : T[] ) : number {
return arg.length;
}
oop < number > ( [1,2,3]);
// 13. arrow function
let Animals = {
names : ['cat','dog','pin'],
choose : function() {
console.log( this.names[ 1 ]);
}
}
// this 가 무모 영역 참조할수 없다 별개의 영역으로 처리된다.
setTimeout( Animals.choose(), 100);
// this 가 부모 영역을 침조가능하게 된다
setTimeout( () => Animals.choose(), 100);
// 14. class
class Cat {
public a: number = 12;
private name : string;
static name2: string = "KKK";
constructor(theName) {
this.name = theName;
console.log('cat constuctror');
}
public call() {
console.log('call');
}
private sound() {
console.log( Cat.name2 + ' sounds...');
}
static bark() {
console.log( Cat.name2 + ' bark...');
}
// getter
get Name() : string {
return name;
}
// setter
set Name(theName) {
this.name = theName;
}
}
let obj = new Cat('aa'); // Cat calss constructor 호출
console.log(obj.a);
console.log(Cat.name2); // static
// 15.
// 2. 환경설정
// 3. 변수 선언
var a = 1; // 전연변수
let b= 2; // 지역변수
const c = 3 // 상수
// 4. 타입지정 형지정
var aa : number = 1;
var bb : string = 'aa';
var cc : boolean = true;
// 5. 튜플
let aaa : [number, string ];
// 6. enum 열거형
enum days { Sunday, monday, thusday };
console.log( days.Sunday );
enum days2 {sunday = 1, monday = 2 };
console.log( days.Sunday );
console.log( days[1] );
// 7. any 형 - 변수에 어떤 값이든 허용
var kk : any = "123";
// 8. 형 변환
let strValue;
strValue = 1234;
( < string > strValue).length; // 주로 사용
(strValue as string).length;
// 9. type inference , 형 자동 지정
let a = 1; // 자동 숫자형으로
a = 'asd'; // 이미 숫자옇으로 지정해서 문자형 값 대입 안됨
// 10. function typeing 함수 타입핑 - 함 수이의 인자와 리턴에 형지정
function f ( arg : number ) : string {
return ' I got ' + arg;
}
// 11. 함수 type
// 함수 typeing 은 함수의 파라메터 형과 리턴 형을 지정하는 것
// 함수 type 은 타입입니다.
let pp : string;
// 함수 type 은 변수에 형을 지정하듯 하나의 완전한 타입니다.
var ff = function() {
return a;
}
function ff2 ( a: number ) : number {
return a;
}
// 함수의 형을 그대로 지정
let myFunc : (a:number) => number = ff2;
// 12. Generic - 함ㅛㅜ의 타ㄹ입과 상관없이 여러 데이터 타입으로 사용 가능한것
function identity < T > ( arg : T ) : t {
return arg;
}
identity < number > (123);
identity < string > ( 'as3' );
function oop <T> ( arg : T[] ) : number {
return arg.length;
}
oop < number > ( [1,2,3]);
// 13. arrow function
let Animals = {
names : ['cat','dog','pin'],
choose : function() {
console.log( this.names[ 1 ]);
}
}
// this 가 무모 영역 참조할수 없다 별개의 영역으로 처리된다.
setTimeout( Animals.choose(), 100);
// this 가 부모 영역을 침조가능하게 된다
setTimeout( () => Animals.choose(), 100);
// 14. class
class Cat {
public a: number = 12;
private name : string;
static name2: string = "KKK";
constructor(theName) {
this.name = theName;
console.log('cat constuctror');
}
public call() {
console.log('call');
}
private sound() {
console.log( Cat.name2 + ' sounds...');
}
static bark() {
console.log( Cat.name2 + ' bark...');
}
// getter
get Name() : string {
return name;
}
// setter
set Name(theName) {
this.name = theName;
}
}
let obj = new Cat('aa'); // Cat calss constructor 호출
console.log(obj.a);
console.log(Cat.name2); // static
// 15.