Tests that console logging different types of functions correctly. console-functions.js:29 ƒ simple() {} console-functions.js:30 ƒ simple() length: 0 name: "simple" prototype: {} arguments: null caller: null [[FunctionLocation]]: console-functions.js:15 [[Prototype]]: ƒ () [[Scopes]]: Scopes[1] console-functions.js:29 async ƒ asyncSimple() {} console-functions.js:30 async ƒ asyncSimple() length: 0 name: "asyncSimple" arguments: (...) caller: (...) [[FunctionLocation]]: console-functions.js:16 [[Prototype]]: AsyncFunction [[Scopes]]: Scopes[1] console-functions.js:29 ƒ* genSimple() {} console-functions.js:30 ƒ* genSimple() length: 0 name: "genSimple" prototype: Generator {} arguments: (...) caller: (...) [[FunctionLocation]]: console-functions.js:17 [[IsGenerator]]: true [[Prototype]]: GeneratorFunction [[Scopes]]: Scopes[1] console-functions.js:29 ƒ (){} console-functions.js:30 ƒ anonymous() length: 0 name: "" prototype: {} arguments: null caller: null [[FunctionLocation]]: console-functions.js:18 [[Prototype]]: ƒ () [[Scopes]]: Scopes[1] console-functions.js:29 ƒ (x, y){} console-functions.js:30 ƒ anonymous(x, y) length: 2 name: "" prototype: {} arguments: null caller: null [[FunctionLocation]]: console-functions.js:19 [[Prototype]]: ƒ () [[Scopes]]: Scopes[1] console-functions.js:29 ƒ namedArgs(x) {} console-functions.js:30 ƒ namedArgs(x) length: 1 name: "namedArgs" prototype: {} arguments: null caller: null [[FunctionLocation]]: console-functions.js:20 [[Prototype]]: ƒ () [[Scopes]]: Scopes[1] console-functions.js:29 ƒ namedArgs2(x, y) {} console-functions.js:30 ƒ namedArgs2(x, y) length: 2 name: "namedArgs2" prototype: {} arguments: null caller: null [[FunctionLocation]]: console-functions.js:21 [[Prototype]]: ƒ () [[Scopes]]: Scopes[1] console-functions.js:29 ƒ ({}) {} console-functions.js:30 ƒ anonymous({}) length: 1 name: "" prototype: {} arguments: null caller: null [[FunctionLocation]]: console-functions.js:22 [[Prototype]]: ƒ () [[Scopes]]: Scopes[1] console-functions.js:29 ƒ * whitespace ( x ) { } console-functions.js:30 ƒ * whitespace( x ) length: 1 name: "whitespace" prototype: Generator {} arguments: (...) caller: (...) [[FunctionLocation]]: console-functions.js:23 [[IsGenerator]]: true [[Prototype]]: GeneratorFunction [[Scopes]]: Scopes[1] console-functions.js:29 async ƒ whitespace2 ( x , y , z ) { } console-functions.js:30 async ƒ whitespace2( x , y , z ) length: 3 name: "whitespace2" arguments: (...) caller: (...) [[FunctionLocation]]: console-functions.js:24 [[Prototype]]: AsyncFunction [[Scopes]]: Scopes[1] console-functions.js:33 {func0: ƒ, func1: ƒ, func2: ƒ, func3: ƒ, func4: ƒ, …} func0: ƒ simple() func1: async ƒ asyncSimple() func2: ƒ* genSimple() func3: ƒ () func4: ƒ (x, y) func5: ƒ namedArgs(x) func6: ƒ namedArgs2(x, y) func7: ƒ ({}) func8: ƒ * whitespace( x ) func9: async ƒ whitespace2( x , y , z ) [[Prototype]]: Object console-functions.js:34 Object func0: ƒ simple() func1: async ƒ asyncSimple() func2: ƒ* genSimple() func3: ƒ () func4: ƒ (x, y) func5: ƒ namedArgs(x) func6: ƒ namedArgs2(x, y) func7: ƒ ({}) func8: ƒ * whitespace( x ) func9: async ƒ whitespace2( x , y , z ) [[Prototype]]: Object