title: Can someone explain what Property Decorators in typescript are with a simple example?
body: <pre><code>    function Log(target: any, propertyName: string|Symbol){
           console.log('Property decorator', target , propertyName);
      }
  
      class Product{
        @Log
        title:string;
        private _price: number;
  
        set price(val:number){
            if(val&gt;0){
               this._price = val;
            }
            else{
               throw new Error('Invalid price');
            }
         }
        constructor(t:string, p:number){
               this.title = t;
               this._price = p;
       }
       getPriceWithTax(tax:number){
               return this._price*(1+tax);
       }
   }
  </code></pre>
  <p>This is returning Product: {},  &quot;title&quot;. How to get back the constructor here? I do not understand. Am I not supposed to get back prototype here? What am I doing wrong in this case? I am trying to use a typescript property decorator.</p>