Vivasoft-logo

2.5 āĻ•āĻŽāύ āĻāϰāϰ

 

āĻĒā§āϰāĻ¤ā§āϝ⧇āĻ• āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡āϰ āĻ•āĻŋāϛ⧁ āϏ⧇āϟ āĻ…āĻĢ āĻŦāĻŋāĻšā§‡āĻ­āĻŋāĻ“āϰ āφāϛ⧇ āϝāĻž āĻĻ⧇āĻ–āĻž āϝāĻžā§Ÿ āϏ⧇āχ āĻ­ā§āϝāĻžāϞ⧁āϰ āωāĻĒāϰ āύāĻžāύāĻž āĻ…āĻĒāĻžāϰ⧇āĻļāύ āϚāĻžāϞāĻŋā§Ÿā§‡āĨ¤ āϧāϰāĻž āϝāĻžāĻ• āύāĻŋāĻšā§‡āϰ āĻāĻ•ā§āϏāĻžāĻŽā§āĻĒāϞāϟāĻž āύāĻŋā§Ÿā§‡āσ

 
 
 
// Accessing the property ‘toLowerCase’
// on ‘message’ and then calling it
message.toLowerCase();
// Calling ‘message’
message();
 

 

āĻĒā§āϰāĻĨāĻŽā§‡ āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāĻšā§āĻ›āĻŋ toLoweCase() āĻĒā§āϰāĻĒāĻžāĻ°ā§āϟāĻŋāϟāĻŋ āĻ•āϞ āĻšāĻšā§āϛ⧇ āĻŽā§‡āϏ⧇āϜ āύāĻžāĻŽāĻ• āĻ­ā§āϝāĻžāϰāĻŋā§Ÿā§‡āĻŦāϞ⧇, āφāϰ āĻĒāϰ⧇āϰāϟāĻžāϤ⧇ āĻŽā§‡āϏ⧇āϜāϕ⧇ āĻ•āϞ āĻ•āϰāĻž āĻšāĻšā§āϛ⧇ āĻĄāĻžāχāϰ⧇āĻ•ā§āϟāϞāĻŋāĨ¤ āĻāĻ–āύ āĻāĻ–āĻžāύ⧇ āĻ•āĻŋāϛ⧁ āĻĒā§āϰāĻļā§āύ āφāϏāĻŦ⧇, āϝ⧇

  • message() āĻ•āĻŋ āĻāĻ­āĻžāĻŦ⧇ āĻ•āϞ āĻ•āϰāĻž āϝāĻžāĻŦ⧇?
  • āĻŽā§‡āϏ⧇āĻœā§‡ āĻ•āĻŋ toLoweCase() āφāϛ⧇ ?
  • āϝāĻĻāĻŋ āĻĨ⧇āϕ⧇āĻ“ āĻĨāĻžāϕ⧇, āĻāĻ­āĻžāĻŦ⧇ āĻ•āĻŋ āĻ•āϞ āĻ•āϰāĻž āĻ•āĻŋ āϏāĻŽā§āĻ­āĻŦ?
  • āϝāĻĻāĻŋ āĻĻ⧁āϟāĻŋāϕ⧇ āĻ•āϞ āĻ•āϰāĻž āϏāĻŽā§āĻ­āĻŦ āĻ“ āĻšā§Ÿ, āĻāĻĻ⧇āϰ āĻ•āϞ āĻ•āϰāϞ⧇ āĻ•āĻŋ āĻĒāĻžāĻ“ā§ŸāĻž āϝāĻžāĻŦ⧇?

āĻāĻ–āύ āϧāϰ⧁āύ āφāĻŽāϰāĻž āĻŽā§‡āϏ⧇āϜāϕ⧇ āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚ āĻšāĻŋāϏāĻžāĻŦ⧇ āĻĄāĻŋāĻ•ā§āĻ˛ā§‡ā§ŸāĻžāϰ āĻ•āϰāĻŋāσ

 
 
 
const message = “Hello World!”;
 

 

āϤāĻžāĻšāϞ⧇ ‘toLoweCase()’ āĻĒā§āϰāĻĒāĻžāĻ°ā§āϟāĻŋāϜ āĻ•āϞ āĻ•āϰāϞ⧇ āφāĻŽāϰāĻž ‘Hello World!’ āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚āϟāĻžāϰ āĻ˛ā§‹ā§ŸāĻžāϰ āϕ⧇āϏ⧇ āĻĒāĻžāĻŦā§‹āĨ¤ āĻ•āĻŋāĻ¨ā§āϤ⧁ āĻŽā§‡āϏ⧇āϜāϕ⧇ āĻĄāĻžāχāϰ⧇āĻ•ā§āϟāϞāĻŋ āĻ•āϞ āĻĻāĻŋāϞ⧇ āφāĻŽāϰāĻž āĻāĻŽāύ āĻāĻ•āϟāĻŋ āĻāϰāϰ āĻĒāĻžāĻŦā§‹āĨ¤

TypeError: message is not a function

āĻ āϧāϰāύ⧇āϰ āĻāϰāϰ āφāĻŽāĻžāĻĻ⧇āϰ āĻāĻ­ā§Ÿā§‡āĻĄ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤ āϝāĻ–āύ āφāĻŽāϰāĻž āφāĻŽāĻžāĻĻ⧇āϰ āϕ⧋āĻĄ āϰāĻžāύ āĻ•āϰāĻžāχ āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āϰāĻžāύāϟāĻžāχāĻŽ āĻāĻ•āϟāĻŋ āĻ­ā§āϝāĻžāϰāĻŋā§Ÿā§‡āĻŦāϞ⧇āϰ āϟāĻžāχāĻĒ⧇āϰ āωāĻĒāϰ āĻ­āĻŋāĻ¤ā§āϤāĻŋ āĻ•āϰ⧇ āϤāĻžāϰ āĻĒā§āϰāĻĒāĻžāĻ°ā§āϟāĻŋāϜ āύāĻŋāĻ°ā§āύ⧟ āĻ•āϰ⧇āĨ¤ āĻĒā§āϰāĻŋāĻŽāĻŋāϟāĻŋāĻ­ āϟāĻžāχāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āϰāĻžāύāϟāĻžāχāĻŽā§‡āϰ āύāĻŋāĻ°ā§āύ⧟āϟāĻž āϏāĻšāϜ āĻšāϞ⧇āĻ“, āĻ…āĻ¨ā§āϝ āϟāĻžāχāĻĒāϏ āϝ⧇āĻŽāύ āĻĢāĻžāĻ‚āĻ•āĻļāύāĻĻ⧇āϰ āϟāĻžāχāĻĒ āϰāĻžāύāϟāĻžāχāĻŽā§‡āϰ āύāĻŋāĻ°ā§āύ⧟ āĻ•āϰ⧇ āĻ•āĻ āĻŋāύāĨ¤ āĻāĻ•āϟāĻž āĻĢāĻžāĻ‚āĻ•āĻļāύāϕ⧇ āĻ•āϞ āύāĻž āĻĻāĻŋā§Ÿā§‡ āϰāĻžāύāϟāĻžāχāĻŽ āύāĻŋāĻ°ā§āύ⧟ āĻ•āϰāĻž āϏāĻŽā§āĻ­āĻŦ āύāĻžāĨ¤ āϝ⧇āĻŽāύ āύāĻŋāĻšā§‡āϰ āĻĢāĻžāĻ‚āĻ•āĻļāύāϟāĻŋāσ

 
 
 
function fn(x) {
return x.flip();
}
 

āĻĒāĻŋāωāϰ āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡āϰ āĻāϟāĻž āĻŦ⧁āĻāϤ⧇ āĻšāϞ⧇ āĻāχ āĻĢāĻžāĻ‚āĻ•āĻļāύ⧇ āĻāĻ•āϟāĻž āĻ°â€ā§āϝāĻžāύāĻĄāĻŽ āĻ­ā§āϝāĻžāϞ⧁ āĻĻāĻŋā§Ÿā§‡ āϰāĻžāύ āĻ•āϰāĻžāύ⧋ āĻ›āĻžā§œāĻž āφāϰ āϕ⧋āύ āĻĒāĻĨ āύ⧇āχāĨ¤ āĻāχ āĻ­āĻžāĻŦ⧇ āĻ°â€ā§āϝāĻžāĻ¨ā§āĻĄāĻŽ āĻ­ā§āϝāĻžāϞ⧁ āϝāĻžāϰ āϕ⧋āύ āĻĄāĻŋāĻĢāĻžāχāύ āĻ•āϰāĻž āϟāĻžāχāĻĒ āύāĻžāχ, āϤāĻžāĻĻ⧇āϰ āĻŦāϞ⧇ āĻĄāĻžāχāύāĻžāĻŽāĻŋāĻ•āĻžāϞāĻŋ āϟāĻžāχāĻĒāĻĄāĨ¤ āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āĻāϰ āĻ­ā§āϝāĻžāϰāĻŋ⧟āĻžāĻŦāϞāϰāĻž āĻšā§Ÿ āĻĄāĻžāχāύāĻžāĻŽāĻŋāĻ• āϟāĻžāχāĻĒāĻĄāĨ¤ āĻāϰ āωāĻ˛ā§āĻŸā§‹āϟāĻžāχ āĻ¸ā§āĻŸā§āϝāĻžāϟāĻŋāĻ• āϟāĻžāχāĻĒāĻŋāĻ‚āĨ¤

āĻ¸ā§āĻŸā§āϝāĻžāϟāĻŋāĻ• āϟāĻžāχāĻĒāĻŋāĻ‚ (Static Typing)

āφāϗ⧇āϰ āĻāĻ•ā§āϏāĻžāĻŽā§āĻĒāϞ⧇ āφāĻŽāϰāĻž āϝāĻĻāĻŋ āĻāĻ•āϟ⧁ āĻ­āĻŋāĻ¨ā§āύ āĻ­āĻžāĻŦ⧇ āϞāĻŋāĻ–āĻŋ āϤāĻžāĻšāϞ⧇ āφāĻŽāϰāĻž āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāχāσ

 
 
 
const message = “hello!”;
 
message();
// This expression is not callable.
// Type ‘String’ has no call signatures.
 

 

āĻ¸ā§āĻŸā§āϝāĻžāϟāĻŋāĻ• āϟāĻžāχāĻĒāĻŋāĻ‚ āĻ āφāĻŽāϰāĻž āφāϗ⧇ āĻĨ⧇āϕ⧇āχ āĻāĻ•āϟāĻž āĻ­ā§āϝāĻžāϰāĻŋā§Ÿā§‡āĻŦāϞ āĻ•āĻŋ āϟāĻžāχāĻĒ āĻšāĻŦ⧇ āϤāĻž āωāĻ˛ā§āϞ⧇āĻ– āĻ•āϰ⧇ āĻĻ⧇āχāĨ¤ āωāĻĒāϰ⧇ āϝ⧇āĻŽāύ āφāĻŽāϰāĻž āĻŽā§‡āϏ⧇āϜ āύāĻžāĻŽāĻ• āĻ­ā§āϝāĻžāϰāĻŋ⧟āĻŦāϞāϕ⧇ ‘hello!’ āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚ āĻĻāĻŋā§Ÿā§‡ āχāύāĻŋāϏāĻŋ⧟āĻžāϞāĻžāχāϜ āĻ•āϰ⧇āĻ›āĻŋāĨ¤ āϤāĻ–āύ āĻ¸ā§āĻŸā§āϝāĻžāϟāĻŋāĻ• āϟāĻžāχāĻĒ āϏāĻŋāϏāĻŸā§‡āĻŽāχ āφāĻŽāĻžāĻĻ⧇āϰ āϜāĻžāύāĻžāĻŦ⧇ āφāĻŽāĻžāĻĻ⧇āϰ āĻ­ā§āϝāĻžāϰāĻŋā§Ÿā§‡āĻŦāϞ āĻ•āĻŋ āϧāϰāύ⧇āϰ āĻĒā§āϰāĻĒāĻžāĻ°ā§āϟāĻŋāĻœā§‡āϰ āĻāĻ•ā§āϏ⧇āϏ āĻĒāĻžāĻŦ⧇ āĻ…āĻĨāĻŦāĻž āĻĒāĻžāĻŦ⧇ āύāĻžāĨ¤

āύāύ āĻāĻ•ā§āϏ⧇āĻĒāĻļāύ āĻĢ⧇āϞāĻŋāĻ“āϰ (Non-Exception Failure)

āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āϰāĻžāύāϟāĻžāχāĻŽ āφāĻŽāĻžāĻĻ⧇āϰ āĻāϰāϰ āĻĻ⧇āĻ–āĻžā§Ÿ āχāϏāĻŋāĻāĻŽāĻ(ECMAScript) āύāĻžāĻŽāĻ• āĻ•āύāϭ⧇āύāĻļāύ āĻĢāϞ⧋ āĻ•āϰ⧇āĨ¤ āĻāϏāĻŋāĻāĻŽāĻ āĻāĻ•āϧāϰāύ⧇āϰ āĻ•āύāϭ⧇āύāĻļāύ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ āϝāĻž āĻŦāϞ⧇ āĻāĻ•āϟāĻž āϞāĻžāĻ‚āĻ—ā§ā§Ÿā§‡āϜ āĻ•āĻŋāĻ­āĻžāĻŦ⧇ āϞ⧇āĻ–āĻž āĻšāĻŦ⧇ āĻŦāĻž āĻ•āĻŋ āĻ•āĻŋ āĻ•āύāϭ⧇āύāĻļāύ āĻĢāϞ⧋ āĻ•āϰāĻŦ⧇āĨ¤ āϝ⧇āĻŽāύ āϕ⧋āύ āĻ­ā§āϝāĻžāϰāĻŋā§Ÿā§‡āĻŦāϞ āĻĢāĻžāĻ‚āĻ•āĻļāύ āύāĻž āĻšāϞ⧇ āϤāĻžāϕ⧇ āĻ•āϞ āĻ•āϰāĻž āϝāĻžāĻŦ⧇ āύāĻž, āĻ•āϰāϞ⧇ āĻāϰāϰ āĻĻāĻŋāĻŦ⧇āĨ¤ āĻ•āĻŋāĻ¨ā§āϤ⧁ āϏ⧇āχāĻ­āĻžāĻŦ⧇āχ āĻāĻ•āϟāĻž āĻ…āĻŦāĻœā§‡āĻ•ā§āϟ āĻāϰ āϕ⧋āύ āĻĒā§āϰāĻĒāĻžāĻ°ā§āϟāĻŋāϜ āύāĻž āĻĨāĻžāĻ•āϞ⧇ āĻ“āχāϟāĻž āĻ•āϞ āĻ•āϰāϤ⧇ āϗ⧇āϞ⧇ āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āϰāĻŋāϞāĻŋāϭ⧇āĻ¨ā§āϟ āĻāϰāϰ āύāĻž āĻĻāĻŋā§Ÿā§‡ āĻĻā§‡ā§Ÿ āφāύāĻĄāĻŋāĻĢāĻžāχāĻ¨ā§āĻĄ (undefined).

 
 
 
const user = {
name: “Daniel”,
age: 26,
};
user.location; // returns undefined
 

 

āϝāĻĻāĻŋ āϏāĻŋāĻ¨ā§āĻŸā§‡āĻ•ā§āϏ āĻ“ āĻ āĻŋāĻ• āĻĨāĻžāϕ⧇ āĻ…āĻ°ā§āĻĨāĻžā§Ž āĻ­ā§āϝāĻžāϞāĻŋāĻĄ āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āĻ“ āĻšā§Ÿ āϤāĻžāĻšāϞ⧇āĻ“ āĻāĻ•ā§āϏāĻžāĻ•ā§āϟ āĻāϰāϰ āĻĒāĻžāĻ“ā§ŸāĻž āϝāĻžā§Ÿ āύāĻžāĨ¤ āϤāĻžāχ āĻāχāĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āĻ¸ā§āĻŸā§āϝāĻžāϟāĻŋāĻ• āϟāĻžāχāĻĒāĻŋāĻ‚ āύāĻž āĻ•āϰāϞ⧇, āĻ­ā§āϝāĻžāϞāĻŋāĻĄ āĻāϰāϰ āĻŽā§āϝāĻžāϏ⧇āϜ āĻĒāĻžāĻ“ā§ŸāĻž āϝāĻžāĻŦ⧇ āύāĻžāĨ¤ āϝāĻĻāĻŋ āωāĻĒāϰ⧇āϰ āϕ⧋āĻĄāϟāĻŋ āφāĻŽāϰāĻž āϟāĻžāχāĻĒāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āĻ āϚāĻžāϞāĻžāϤāĻžāĻŽ āϤāĻžāĻšāϞ⧇ āĻāχāϧāϰāύ⧇āϰ āĻŽā§āϝāĻžāϏ⧇āϜ āĻĒ⧇āϤāĻžāĻŽāĨ¤

 
 
 
const user = {
name: “Daniel”,
age: 26,
};
 
user.location;
Property ‘location’ does not exist on type ‘{ name: string; age: number; }’.
 

 

āĻāχ āϧāϰāύ⧇āϰ āφāϰ⧋ āĻ…āύ⧇āĻ• āĻ•āĻŋāϛ⧁ āϟāĻžāχāĻĒāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āϧāϰāϤ⧇ āĻĒāĻžāϰ⧇, āϝ⧇āĻŽāύ āϟāĻžāχāĻĒā§‹āϏ āωāĻĻāĻžāĻšāϰāĻŖ ā§§(example1) āφāύāĻ•āĻ˛ā§āĻĄ āĻĢāĻžāĻ‚āĻ•āĻļāύ āωāĻĻāĻžāĻšāϰāĻŖ ⧍(example2), āϞāϜāĻŋāĻ• āĻāϰāϰ āωāĻĻāĻžāĻšāϰāĻŖ ā§Š(example3)āĨ¤

āϟāĻžāχāĻĒā§āϏ āĻ“āĻĢ āϟ⧁āϞāĻŋāĻ‚ (Types of Tooling) 

āϟāĻžāχāĻĒāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āĻļ⧁āϧ⧁ āϕ⧋āĻĄ āϞ⧇āĻ–āĻžāϰ āĻĒāϰ āύ⧟, āϕ⧋āĻĄ āϞ⧇āĻ–āĻžāϰ āϏāĻŽā§Ÿ āĻ“ āϭ⧁āϞ āĻļ⧁āϧāϰ⧇ āĻĻāĻŋāϤ⧇ āϏāĻžāĻšāĻžāĻ¯ā§āϝ āĻ•āϰ⧇, āϟāĻžāχāĻĒ āĻšā§‡āĻ•āĻžāϰ āϟ⧁āϞ āĻāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡āĨ¤

āϟāĻŋāĻāϏāϏāĻŋ (TypeScript Compiler)

āφāϏ⧁āύ āφāĻŽāϰāĻž āϟāĻŋāĻāϏāϏāĻŋ āĻŸā§‡āĻ¸ā§āϟ āĻ•āϰāĻž āϜāĻ¨ā§āϝ āχāĻ¨ā§āϏāϟāϞ āĻ•āϰāĻŋāĨ¤

npm install -g typescript

āĻāϰāĻĒāϰ āĻ–āĻžāϞāĻŋ āĻĢā§‹āĻ˛ā§āĻĄāĻžāϰ⧇ āφāĻŽāϰāĻž ‘hello.ts’ āĻĢāĻžāχāϞ āĻŦāĻžāύāĻžāχāĨ¤ āϝāĻžāϰ āϭ⧇āϤāϰ⧇ āϞāĻŋāĻ–āĻŋāσ

 
 
 
// Greets the world.
console.log(“Hello world!”);
 

 

āĻāϰāĻĒāϰ āϟāĻžāĻ°ā§āĻŽāĻŋāύāĻžāϞ āĻĨ⧇āϕ⧇ āĻ“āχ āĻĢā§‹āĻ˛ā§āĻĄāĻžāϰ⧇ ‘tsc hello.ts’ āϰāĻžāύ āĻ•āϰāĻŋāĨ¤ āĻ•āĻŋ āĻšāϞ⧋? āφāĻĒāĻžāϤ āĻĻ⧃āĻˇā§āϟāĻŋāϤ⧇ āĻ•āĻŋāϛ⧁āχ āύāĻžāĨ¤ āĻ•āĻžāϰāύ āφāĻŽāĻžāĻĻ⧇āϰ āϕ⧋āύ āĻāϰāϰ āĻ›āĻŋāϞ āύāĻž, āϤāĻžāχ āϟāĻžāχāĻĒāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āĻ•āĻŽā§āĻĒāĻžāχāϞāĻžāϰ āϕ⧋āύ āĻāϰāϰ āĻĻā§‡ā§ŸāύāĻŋāĨ¤ āϤāĻžāχ āĻ•āĻ¨ā§āϏ⧋āϞ⧇ āĻ•āĻŋāϛ⧁ āύ⧇āχāĨ¤ āĻ•āĻŋāĻ¨ā§āϤ⧁ āĻ–ā§‡ā§ŸāĻžāϞ āĻ•āϰāϞ⧇ āĻĻ⧇āĻ–āĻž āϝāĻžāĻŦ⧇, ‘hello.js’ āύāĻžāĻŽāĻ• āĻāĻ•āϟāĻŋ āĻĢāĻžāχāϞ āĻ•ā§āϰāĻŋā§Ÿā§‡āϟ āĻšā§Ÿā§‡āϛ⧇ ‘hello.ts’ āĻāϰ āĻĒāĻžāĻļ⧇āĨ¤ āĻāχ ‘hello.js’ āĻĢāĻžāχāϞ āϖ⧁āϞāϞ⧇ āφāĻŽāϰāĻž āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāχāσ

 
 
 
// Greets the world.
console.log(“Hello world!”);
 

 

‘hello.ts’ āĻĨ⧇āϕ⧇ āϤ⧇āĻŽāύ āϕ⧋āύ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āύ⧇āχāĨ¤ āĻ•āĻžāϰāύ āĻāϟāĻž āĻļ⧁āϧ⧁āχ āĻšā§āϝāĻžāϞ⧋ āĻ“ā§ŸāĻžāĻ°ā§āĻ˛ā§āĻĄ āϕ⧋āĻĄ āĻ›āĻŋāϞāĨ¤ āϤāĻžāĻšāϞ⧇ āφāĻŽāϰāĻž āϝāĻĻāĻŋ āωāĻĻāĻžāĻšāϰāĻŖ ā§Ē (example4) āϕ⧋āĻĄ āĻāĻĄ āĻ•āϰāĻŋ ‘hello.ts’, āĻāĻŦāĻ‚ ‘tsc hello.ts’ āϰāĻžāύ āĻ•āϰāĻŋ, āϤāĻžāĻšāϞ⧇ āφāĻŽāϰāĻž āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāχāσ

Expected 2 arguments, but got 1.

āĻ•āĻŽā§āĻĒāĻžāχāϞāĻžāϰ āφāĻŽāĻžāĻĻ⧇āϰ āĻŦāϞāϛ⧇ āϝ⧇ āφāĻŽāϰāĻž āĻĻ⧁āχāϟāĻžāϰ āϝāĻžā§ŸāĻ—āĻžā§Ÿ āĻāĻ•āϟāĻž āφāĻ°ā§āϗ⧁āĻŽā§‡āĻ¨ā§āϟ āĻĒāĻžāĻ āĻŋā§Ÿā§‡āĻ›āĻŋāĨ¤

āĻāĻŽāĻŋāϟāĻŋāχāĻ‚ āωāχāĻĨ āĻāϰāϰ (Emitting with Error)

āφāĻŽāϰāĻž āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāĻŦā§‹ āωāĻĒāϰ⧇āϰ āϕ⧋āĻĄ āϰāĻžāύ⧇āϰ āϜāĻ¨ā§āϝ ‘hello.js’ āφāĻŦāĻžāϰ āĻšā§‡āĻžā§āϜ āĻšā§Ÿā§‡āϛ⧇āĨ¤ āĻāĻ–āύ āĻ…āύ⧇āĻ• āϏāĻŽā§Ÿ āĻāĻŽāύ āĻšāϤ⧇ āĻĒāĻžāϰ⧇ āφāĻŽāĻžāĻĻ⧇āϰ āĻĒāĻžāĻ°ā§āĻĢ⧇āĻ•ā§āϟ āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āϕ⧋āĻĄ, āϟāĻžāχāĻĒāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ āĻ•āύāĻ­āĻžāĻ°ā§āϟ āĻ•āϰāϤ⧇ āĻ—āĻŋā§Ÿā§‡ āϟāĻžāχāĻĒ āĻāϰāϰ āĻ–āĻžāĻšā§āϛ⧇āĨ¤ āϏ⧇āχ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āφāĻŽāϰāĻž āσ

tsc –noEmitOnError hello.ts

āϤāĻžāĻšāϞ⧇ āφāĻŽāĻžāĻĻ⧇āϰ āĻāϰāϰ āĻ›āĻžā§œāĻžāχ āϕ⧋āĻĄ āϰāĻžāύ āĻ•āϰāĻŦ⧇āĨ¤ āϏ⧇āχ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ ‘hello.js’ āĻšā§‡āĻžā§āϜ āĻšāĻŦ⧇ āύāĻžāĨ¤

āĻāĻ•ā§āϏāĻĒā§āϞāĻŋāϏāĻŋāϟ āϟāĻžāχāĻĒā§āϏ (Explicit Types)

āωāĻĻāĻžāĻšāϰāĻŖ ā§Ģ (example5) āĻ āφāĻŽāϰāĻž ‘greet’ āύāĻžāĻŽāĻ• āĻĢāĻžāĻ‚āĻ•āĻļāύ āĻ āĻĒāĻžāĻ°ā§āϏāύ āφāϰ āĻĄā§‡āϟ āφāĻ°ā§āϗ⧁āĻŽā§‡āĻ¨ā§āϟ āĻĒāĻžāĻ āĻžāĻšā§āĻ›āĻŋāĨ¤ āωāϞ⧇āĻ–āϝ⧋āĻ—ā§āϝ, āϝ⧇ āφāĻŽāϰāĻž āĻĒāĻžāĻ°ā§āϏāύ⧇āϰ āϜāĻ¨ā§āϝ āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚ āφāϰ āĻĄā§‡āĻŸā§‡āϰ āϜāĻ¨ā§āϝ āĻĄā§‡āϟ āϟāĻžāχāĻĒ āφāϞāĻžāĻĻāĻž āĻ•āϰ⧇ āĻĄāĻŋāĻ•ā§āĻ˛ā§‡ā§ŸāĻžāϰ āĻ•āϰāĻ›āĻŋāĨ¤

āĻāϟāĻžāϕ⧇ āĻŦāϞ⧇ āĻāĻ•ā§āϏāĻĒā§āϞāĻŋāϏāĻŋāϟāϞāĻŋ āϟāĻžāχāĻĒāĻĄ, āĻāĻ–āύ āφāĻŽāϰāĻž ‘greet’ āϕ⧇ āĻ•āϞ āĻĻ⧇āĻ“ā§ŸāĻžāϰ āĻĒāϰāĻ“ āĻāϰāϰ āĻ–āĻžāĻŦā§‹āĨ¤

Argument of type ‘string’ is not assignable to parameter of type ‘Date’.

āĻāϰ āĻ•āĻžāϰāύ āφāĻŽāϰāĻž āĻĄā§‡āϟ āϝ⧇āϟāĻž āĻĒāĻžāĻ āĻŋā§Ÿā§‡āĻ›āĻŋ āϏ⧇āϟāĻž āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚ āϰāĻŋāϟāĻžāĻ°ā§āύ āĻ•āϰ⧇, āĻĄā§‡āϟ āϟāĻžāχāĻĒ āύāĻžāĨ¤ āϤāĻžāχ āφāĻŽāĻžāĻĻ⧇āϰ āύāĻŋāω āĻĄā§‡āϟ āφāĻ°ā§āϗ⧁āĻŽā§‡āĻ¨ā§āϟ āĻšāĻŋāϏāĻžāĻŦ⧇ āĻĒāĻžāĻ āĻžāϤ⧇ āĻšāĻŦ⧇āĨ¤

āύ⧋ āχāĻŽāĻĒā§āϞāĻŋāϏāĻŋāϟ āĻāύāĻŋ āĻĢā§āĻ˛ā§āϝāĻžāĻ— (noImplicitAny) 

āϝāĻ–āύ āϕ⧋āύ āϟāĻžāχāĻĒ āĻāĻ•ā§āϏāĻĒā§āϞāĻŋāϏāĻŋāϟāϞāĻŋ āĻŦāϞāĻž āύāĻž āĻšā§Ÿ āĻ“āχāϟāĻž ” āϟāĻžāχāĻĒ āĻšāĻŋāϏāĻžāĻŦ⧇ āĻ—āĻŖā§āϝ āĻ•āϰāĻž āĻšā§ŸāĨ¤ āĻ•āĻŋāĻ¨ā§āϤ⧁ āϟāĻžāχāĻĒāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āχāωāϜ āĻ•āϰāĻžāϰ āĻŽā§‚āϞ āωāĻĻā§āĻĻ⧇āĻļā§āϝāχ āϤ⧋ āϟāĻžāχāĻĒ āχāωāϜ āĻ•āϰāĻžāĨ¤ āϤāĻž āύāĻž āĻšāϞ⧇ āĻāϟāĻž āϏāĻŋāĻŽā§āĻĒāϞ āϜāĻžāĻ­āĻžāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āĻšāĻŋāϏ⧇āĻŦ⧇āχ āϧāϰ⧇ āĻ¨ā§‡ā§ŸāĻž āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āϤāĻžāχ ‘noImplicitAny’ āĻĢā§āĻ˛ā§āϝāĻžāĻ— āχāωāϜ āĻ•āϰāĻž āĻšā§Ÿ āϝāĻžāϤ⧇ āĻāύāĻŋ āϟāĻžāχāĻĒ āχāĻŽāĻĒā§āϞāĻŋāϏāĻŋāϟāϞāĻŋ āχāωāϜ āύāĻž āĻ•āϰāĻž āϝāĻžā§ŸāĨ¤

āĻ¸ā§āĻŸā§āϰāĻŋāĻ•ā§āϟ āύāĻžāϞ āĻšā§‡āĻ• āĻĢā§āĻ˛ā§āϝāĻžāĻ— (strictNullChecks) 

‘noImplicitAny’ āĻĢā§āĻ˛ā§āϝāĻžāϗ⧇āϰ āĻŽāϤāχ ‘strictNullChecks’ āĻĢā§āĻ˛ā§āϝāĻžāĻ— āχāωāϜ āĻ•āϰāĻž āĻšā§Ÿ, āϝāĻžāϤ⧇ ‘null’ āĻāĻŦāĻ‚ ‘undefined’ āϕ⧇ āĻāĻ•ā§āϏāĻĒā§āϞāĻŋāϏāĻŋāϟāϞāĻŋ āĻšā§āϝāĻžāĻ¨ā§āĻĄā§‡āϞ āĻ•āϰāĻž āϝāĻžā§ŸāĨ¤