title: Declaring new "Class fields" dynamically inside a method - Good practice or not?
body: <p>This is a purely Design/Good practice issue, and I cannot provide the actual code example, but only pseudo code.</p>
  
  <p>I'm working with a proprietary JavaScript framework, that gives me a concept of a Class (similarly to TypeScript) and allows me to create "Class Members/Fields" dynamically. Example using pseudo code:</p>
  
  <pre><code>Class Human {
  
      firstName;
      secondName;
  
      HumanConstructor() {
  
      }
  
      void method1 {
          this.title = "Mr";     // dynamically created new Class field
      }
  
      void method2 {
          this.addressedByName = this.title + this.firstName;
      }
  }
  </code></pre>
  
  <p>Question1:  Is it a good/bad design to introduce new "class fields" inside methods?
  Question2:  Is it a good/bad desgin for one method (method2) to be dependent upon the fact that other method (method1) was caleld first.</p>
  
  <p>What are the advantages and drawbacks of the above two topics?</p>