1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
// Chain: a -> b -> c function a() { b(); } function b() { c(); } function c() { console.log("leaf"); } // Cycle: cycleA -> cycleB -> cycleA function cycleA() { cycleB(); } function cycleB() { cycleA(); } // Multiple callers: caller1 -> target, caller2 -> target function target() { console.log("target"); } function caller1() { target(); } function caller2() { target(); }