Vivasoft-logo

5.7 āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ āĻĄā§‡āϕ⧋āϰ⧇āϟāĻ°ā§āϏ

āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ āĻšāϞ⧋ āĻĢāĻžāĻ‚āĻļāύ⧇ āĻĒāĻžāĻ āĻžāύ⧋ āĻ­ā§āϝāĻžāϞ⧁ āĻŦāĻž āφāĻ°ā§āϗ⧁āĻŽā§‡āĻ¨ā§āϟāĨ¤.āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ āĻĄā§‡āϕ⧋āϰ⧇āϟāϰ āĻ āĻŋāĻ• āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ āĻĄāĻŋāĻ•ā§āϞāĻžāϰ⧇āĻļāύ⧇āϰ āφāϗ⧇ āĻĄāĻŋāĻ•ā§āĻ˛ā§‡ā§ŸāĻžāϰ āĻ•āϰāĻž āĻšā§ŸāĨ¤

āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ āĻĄā§‡āϕ⧋āϰ⧇āϟāϰ⧇āϰ āĻāĻ•ā§āϏāĻĒā§āϰ⧇āĻļāύāϟāĻŋ āĻāĻ•āϟāĻŋ  āĻĢāĻžāĻ‚āĻļāύ āĻšāĻŋāϏ⧇āĻŦ⧇ āϰāĻžāύāϟāĻžāχāĻŽā§‡Â  āĻ•āϞ āĻšā§Ÿ āĻāĻŦāĻ‚ āĻāϤ⧇ āϤāĻŋāύāϟāĻž āφāĻ°ā§āϗ⧁āĻŽā§‡āĻ¨ā§āϟ āĻĨāĻžāĻ•āĻŦ⧇āĨ¤

ā§§āĨ¤Â  target: āĻ¸ā§āĻŸā§āϝāĻžāϟāĻŋāĻ• āĻŽā§‡āĻŽā§āĻŦāĻžāϰ⧇āĻ°Â  āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āĻ•ā§āϞāĻžāϏāϟāĻŋāϰ āĻ•āĻ¨ā§āϏāĻŸā§āϰāĻžāĻ•ā§āϟāϰ āĻĢāĻžāĻ‚āĻļāĻ¨Â  āĻ…āĻĨāĻŦāĻžÂ  āχāύāĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āϏ   āĻŽā§‡āĻŽā§āĻŦāĻžāϰ⧇āϰ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āĻ•ā§āϞāĻžāϏāϟāĻŋāϰ āĻĒā§āϰāĻŸā§‹āϟāĻžāχāĻĒ 

⧍āĨ¤ propertyKey: āĻŽā§‡āĻŽā§āĻŦāĻžāϰāϟāĻŋāϰ āύāĻžāĻŽ

ā§ŠāĨ¤ parameterIndex: āĻĢāĻžāĻ‚āĻļāύ⧇āϰ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ āϞāĻŋāĻ¸ā§āĻŸā§‡ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ⧇āϰ āĻ…āϰāϜāĻŋāύāĻžāϞ āχāύāĻĄā§‡āĻ•ā§āϏ

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

āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ āĻĄā§‡āϕ⧋āϰ⧇āϟāϰ⧇āϰ āϰāĻŋāϟāĻžāĻ°ā§āύ āĻ­ā§āϝāĻžāϞ⧁ āωāĻĒ⧇āĻ•ā§āώāĻŋāϤ āĻšā§ŸāĨ¤

āĻāĻ–āύ āφāĻŽāϰāĻž āĻāĻ•āϟāĻŋ āϕ⧋āĻĄ āωāĻĻāĻžāĻšāϰāĻŖ āϞāĻ•ā§āĻˇā§āϝ āĻ•āϰāĻŋ:

				
					function LogParameter(
 target: Object,
 propertyKey: string | symbol,
 parameterIndex: number
) {
 console.log(
   `Parameter decorator called on ${String(
     propertyKey
   )} at index ${parameterIndex}`
 );
}


class ParameterDecoratorExample {
 findSquare(@LogParameter value: number) {
   console.log(`Square of ${value} is, ${value * value}`);
 }
}


const example = new ParameterDecoratorExample();
example.findSquare(4);
				
			

āφāωāϟāĻĒ⧁āϟ:

				
					Parameter decorator called on findSquare at index 0
Square of 4 is, 16
				
			

āĻāχ āωāĻĻāĻžāĻšāϰāĻŖā§‡Â  LogParameter āĻĢāĻžāĻ‚āĻļāύ āĻāĻ•āϟāĻŋ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ āĻĄā§‡āϕ⧋āϰ⧇āϟāϰ āϝāĻžÂ  ParameterDecoratorExample āĻ•ā§āϞāĻžāϏ⧇āĻ°Â  findSquare āĻĢāĻžāĻ‚āĻļāύ⧇āϰ āĻ­ā§āϝāĻžāϞ⧁ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ⧇ āĻĒā§āĻ°ā§Ÿā§‹āĻ— āĻ•āϰāĻž āĻšā§Ÿā§‡āϛ⧇āĨ¤ āĻĄā§‡āϕ⧋āϰ⧇āϟāϰāϟāĻŋ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰāϟāĻŋāϰ āĻŦā§āϝāĻžāĻĒāĻžāϰ⧇ āĻ•āĻŋāϛ⧁ āχāύāĻĢāĻ°ā§āĻŽā§‡āĻļāύ āϞāĻ— āĻ•āϰāĻŦ⧇ āϝāĻž āφāĻŽāϰāĻž āĻĒā§āϰ⧋āĻĒāĻžāĻ°ā§āϟāĻŋ āϕ⧀ (Key) āφāϰ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ āχāύāĻĄā§‡āĻ•ā§āϏ āĻĨ⧇āϕ⧇ āĻĒāĻžāχāĨ¤