Nested function inside literal Object...

Posted by Andrea on Stack Overflow See other posts from Stack Overflow or by Andrea
Published on 2010-04-18T10:13:37Z Indexed on 2010/04/18 10:23 UTC
Read the original article Hit count: 587

Filed under:
|
|
|
|

Hello guys, if in a literal object i try to reference a function using "this" inside a nested property/function, this don't work. Why? A nested property have it's own scope?

For example, i want to call f1 from inside d.f2:

var object = {    

  a: "Var a",
  b: "Var b",
  c: "Var c",

  f1: function() {
    alert("This is f1");
  },

  d: {
      f2: function() {
       this.f1();
    }
  },

  e: {
      f3: function() {
        alert("This is f3");
     }
  }
}

object.f1(); // Work
object.d.f2(); // Don't Work. object.e.f3(); // Work

Thanks, Andrea.

© Stack Overflow or respective owner

Related posts about JavaScript

Related posts about literal