瀏覽代碼

5.8: defining and using function types.

Frederic G. MARAND 5 年之前
父節點
當前提交
18baf3a31e
共有 1 個文件被更改,包括 14 次插入11 次删除
  1. 14 11
      app/app.ts

+ 14 - 11
app/app.ts

@@ -54,6 +54,10 @@ function LogFirstAvailable(books): void {
   console.log(`First available: ${firstAvailable}.`);
 }
 
+function CreateCustomerId(name: string, id: number): string {
+  return name + id;
+}
+
 function GetBookTitlesByCategory(categoryFilter: Category): Array<string> {
   console.log(`Getting books in category: ${Category[categoryFilter]}.`);
 
@@ -80,17 +84,16 @@ function LogBookTitles(titles: string[]): void {
 }
 
 //******************************************************************************
+let x: number;
+let idGenerator: (chars: string, nums: number) => string;
+idGenerator = CreateCustomerId;
 
-const fictionBookTitles = GetBookTitlesByCategory(Category.Fiction);
-// LogBookTitles(fictionBookTitles);
-fictionBookTitles.forEach((val, idx, arr) => console.log(`${++idx} ${val}.`));
-
-console.log(GetBookById(2));
-
-function PublicationMessage(year: number): string {
-  return year.toLocaleString();
-}
+let myID: string = idGenerator('Daniel', 10);
+console.log(myID);
 
-type publisherFunc = (y: number) => string;
-let publishFunc: publisherFunc = PublicationMessage;
+idGenerator = (name, id) => id + name;
+myID = idGenerator('Daniel', 10);
+console.log(myID);
 
+// const fictionBookTitles = GetBookTitlesByCategory(Category.Fiction);
+// fictionBookTitles.forEach((val, idx, arr) => console.log(`${++idx} ${val}.`));