かなり理解していない前に、したがって、新しいプロジェクトtypescriptですを使用したい、そのコンセプトとは、再び、どこ次のメジャー記録紙、いくつかの概念を使用していました。
1、ジェネリック
定義:関数の定義では、場合インターフェイス等、不特定の事前指定された型が、その後使用時に指定されたタイプ。再利用性を向上させます。
function createArray<T>(length: number, value: T): Array<T>{
let result: T[] = [];
for (let i = 0; i < length; i++){
result[i] = value
}
return result
}
console.log("数字", createArray(3, 1));
console.log("字符串", createArray(3, 'a'));
定義された関数
createArray
はTとして表さジェネリックパラメータ(値)を有し、この機能は、従来のタイプのT・アレイ(配列)を返します。
;デジタル値が1である場合、それは数字の配列を返す
値が文字列である場合、文字列配列を返します。
2、解体
ES6は、特定のパターンに従ってせ、オブジェクトが解体と呼ばれる値の配列、割り当て変数から抽出されます。主にコードを理解するために、より簡単に単純化することができます。
// 常用1
// 使用
let [a,b,c] = [1,2,3];
// 代替
let a = 1;
let b = 2;
let c = 3;
// 常用2
let obj = {a:1,b:2};
let obj2 = {...obj}
3、断言
組合型の変数が時間のどのタイプであるとき、不確実なTSは、唯一の労働組合のこのタイプのプロパティとメソッドのすべてのタイプの合計にアクセスすることができ、時には時間の不確実タイプにプロパティやメソッドの種類にアクセスする必要性を行います。
function getLength(something: string | number): number{
if((<string>something).length){
return (<string>something).length
}else{
return something.toString().length
}
}
シンタックス1:あなたがアサートに変数を追加する前に
function getLength(something: string | number): number{
if((something as string).length){
return (something as string).length
}else{
return something.toString().length
}
}
4、列挙
使用列挙は、我々は名前でいくつかの定数を定義することができます。明確に意思表明やユースケースのセットを作成するために異なっています。
デジタルタイプ列挙:デフォルトでは、最初の列挙値は0であるが、に順次、後続の増分され
enum Color {
red,
blue,
yellow
}
let col = Color.blue;
alert(col);
// 1
文字列の列挙:
enum ProName {
SUCCESS = 'ok',
ERROR = 'error'
}
alert(ProName.ERROR);
// "error"