{"size": 629, "ext": "js", "max_stars_repo_path": "tests/ecmascript/test-expr-typeof.js", "max_stars_repo_name": "wenq1/duktape", "max_stars_repo_stars_event_min_datetime": "2015-01-01T17:33:40.000Z", "max_stars_repo_stars_event_max_datetime": "2022-03-31T17:53:31.000Z", "max_issues_repo_path": "tests/ecmascript/test-expr-typeof.js", "max_issues_repo_name": "KiraanRK/esp32-duktape", "max_issues_repo_issues_event_min_datetime": "2015-01-01T22:43:03.000Z", "max_issues_repo_issues_event_max_datetime": "2022-02-23T22:27:19.000Z", "max_forks_repo_path": "tests/ecmascript/test-expr-typeof.js", "max_forks_repo_name": "KiraanRK/esp32-duktape", "max_forks_repo_forks_event_min_datetime": "2015-01-08T14:15:28.000Z", "max_forks_repo_forks_event_max_datetime": "2022-03-31T16:29:31.000Z"}
{"max_stars_count": 4268, "max_issues_count": 1667, "max_forks_count": 565, "avg_line_length": 18.5, "max_line_length": 77, "alphanum_fraction": 0.7249602544}
/*
 *  'typeof' operator (E5 Section 11.4.3).
 */

/*===
undefined
object
boolean
boolean
number
number
number
number
string
object
function
function
function
===*/

print(typeof undefined);
print(typeof null);  // note: 'object' is correct
print(typeof true);
print(typeof false);
print(typeof 123);
print(typeof Number.NaN);
print(typeof Number.POSITIVE_INFINITY);
print(typeof Number.NEGATIVE_INFINITY);
print(typeof 'foo');
print(typeof {});     // object and not callable
print(typeof print);  // object and callable
print(typeof print.bind(null, 1, 2)); // object and callable (bound function)
print(typeof function() {});
