All files / 2_Function/3_Abuse FunctionExpression.js

50% Statements 32/64
0% Branches 0/16
3.03% Functions 1/33
60% Lines 24/40
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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67      1x 1x   1x         1x 1x   1x         1x 1x   1x         1x 1x   1x           1x 1x   1x         1x 1x   1x         1x 1x   1x         1x 1x   1x      
export default function() {
  // Function Expression (anonymous)
  // No argument
  const functionExpressionAnonymous01a = function() { return "foo"; }; const functionExpressionAnonymous01b = function() { return "foo"; };
  const functionExpressionAnonymous02a = function() {
    return "foo";
  }; const functionExpressionAnonymous02b = function() {
    return "foo";
  };
 
  // Single argument
  const functionExpressionAnonymous11a = function(foo) { return "foo"; }; const functionExpressionAnonymous11b = function(foo) { return "foo"; };
  const functionExpressionAnonymous12a = function(foo) {
    return "foo";
  }; const functionExpressionAnonymous12b = function(foo) {
    return "foo";
  };
 
  // Multiple arguments
  const functionExpressionAnonymous21a = function(foo, bar) { return "foo"; }; const functionExpressionAnonymous21b = function(foo, bar) { return "foo"; };
  const functionExpressionAnonymous22a = function(foo, bar) {
    return "foo";
  }; const functionExpressionAnonymous22b = function(foo, bar) {
    return "foo";
  };
 
  // Arguments with default values
  const functionExpressionAnonymous31a = function(foo = "=>", bar = "()") { return "foo"; }; const functionExpressionAnonymous31b = function(foo = "=>", bar = "()") { return "foo"; };
  const functionExpressionAnonymous32a = function(foo = "=>", bar = "()") {
    return "foo";
  }; const functionExpressionAnonymous32b = function(foo = "=>", bar = "()") {
    return "foo";
  };
 
  // Function Expression (with name)
  // No argument
  const functionExpressionNamed01a = function functionExpressionNamed01a() { return "foo"; }; const functionExpressionNamed01b = function functionExpressionNamed01b() { return "foo"; };
  const functionExpressionNamed02a = function functionExpressionNamed02a() {
    return "foo";
  }; const functionExpressionNamed02b = function functionExpressionNamed02b() {
    return "foo";
  };
 
  // Single argument
  const functionExpressionNamed11a = function functionExpressionNamed11a(foo) { return "foo"; }; const functionExpressionNamed11b = function functionExpressionNamed11b(foo) { return "foo"; };
  const functionExpressionNamed12a = function functionExpressionNamed12a(foo) {
    return "foo";
  }; const functionExpressionNamed12b = function functionExpressionNamed12b(foo) {
    return "foo";
  };
 
  // Multiple arguments
  const functionExpressionNamed21a = function functionExpressionNamed21a(foo, bar) { return "foo"; }; const functionExpressionNamed21b = function functionExpressionNamed21b(foo, bar) { return "foo"; };
  const functionExpressionNamed22a = function functionExpressionNamed22a(foo, bar) {
    return "foo";
  }; const functionExpressionNamed22b = function functionExpressionNamed22b(foo, bar) {
    return "foo";
  };
 
  // Arguments with default values
  const functionExpressionNamed31a = function functionExpressionNamed31a(foo = "=>", bar = "()") { return "foo"; }; const functionExpressionNamed31b = function functionExpressionNamed31b(foo = "=>", bar = "()") { return "foo"; };
  const functionExpressionNamed32a = function functionExpressionNamed32a(foo = "=>", bar = "()") {
    return "foo";
  }; const functionExpressionNamed32b = function functionExpressionNamed32b(foo = "=>", bar = "()") {
    return "foo";
  };
};