Skip to content

Instantly share code, notes, and snippets.

@artalar
Forked from MichalZalecki/wtf.js
Last active February 4, 2019 09:25
Show Gist options
  • Save artalar/b7fab1afbba5537a97a01cbfe7427cec to your computer and use it in GitHub Desktop.
Save artalar/b7fab1afbba5537a97a01cbfe7427cec to your computer and use it in GitHub Desktop.
/* VT100 terminal reset (<ESC>c) */
console.log('\033c');
/* numbers comparations */
/* > */ '2' == 2;
// true
/* > */ '2' === 2;
// false
/* > */ [2] == 2;
// true
/* > */ [] + [];
// ''
/* > */ [] == [];
// false
/* > */ typeof [];
// 'object'
/* > */ [] == ![];
// true
/* > */ +[] == +![];
// true
/* null comparation */
/* > */ 0 > null;
// false
/* > */ 0 >= null;
// true
/* > */ 0 == null;
// false
/* > */ 0 <= null;
// true
/* > */ 0 < null;
// false
/* > */ typeof null;
// 'object'
/* > */ null instanceof Object;
// false
/* math */
/* > */ 999999999999999;
// 999999999999999
/* > */ 9999999999999999;
// 10000000000000000
/* > */ -9999999999999999;
// -10000000000000000
/* > */ 0.1 + 0.2 == 0.3;
// false
/* > */ 0.1 + 0.2;
// 0.30000000000000004
/* > */ 3 > 2 > 1;
// false
/* > */ 3 > 2 >= 1;
// true
/* > */ '2' + 1;
// '21'
/* > */ '2' - 1;
// 1
/* > */ '2' - -1;
// 3
/* > */ 1/0;
// Infinity
/* > */ typeof Infinity;
// 'number'
/* > */ 0 === -0;
// true
/* > */ 1/0;
// Infinity
/* > */ 1/-0;
// -Infinity
/* > */ Infinity == -Infinity;
// false
/* > */ Number.MAX_VALUE;
// 1.7976931348623157e+308
/* > */ 0 - 1;
// -1
/* > */ Number.MIN_VALUE < 0;
// false
/* > */ Number.MIN_VALUE;
// 5e-324>
/* > */ Math.max(1,2,3);
// 3
/* > */ Math.min(1,2,3);
// 1
/* > */ Math.max() > Math.min();
// false
/* > */ Math.max();
// -Infinity
/* > */ Math.min();
// Infinity
/* string */
/* > */ 'wtf' instanceof String;
// false
/* > */ typeof 'wtf';
// 'string'
/* > */ typeof String('wtf');
// 'string'
/* > */ String('wtf') === 'wtf';
// true
/* > */ String('wtf') === new String('wtf');
// false
/* > */ String('wtf') == new String('wtf');
// true
/* > */ new String('wtf');
/* { '0': 'w',
'1': 't',
'2': 'f' } */
/* > */ new String('wtf').toString();
// 'wtf'
/* > */ 'wft' + 1;
// 'wft1'
/* > */ 'wft' - 1;
// NaN
/* NaN */
/* > */ typeof NaN;
// 'number'
/* > */ typeof 1138;
// 'number'
/* > */ 1138 == 1138;
// true
/* > */ NaN == NaN;
// false
/* > */ isNaN('wft' - 1);
// true
/* boolean math */
/* > */ true + false;
// 1
/* > */ true + true == true;
// false
/* construct function */
/* > */ new 0xff.constructor.constructor('console.error("WTF")')();
// WTF
/* > */ new Function('console.error("WTF")')();
// WTF
/* typeof/instanceof */
/* > */ Array instanceof Array;
// false
/* > */ new Array instanceof Array;
// true
/* > */ Math instanceof Math;
/* TypeError: Expecting a function in instanceof check, but got #<Object>
at repl:1:18
at REPLServer.self.eval (repl.js:110:21)
at Interface.<anonymous> (repl.js:239:12)
at Interface.emit (events.js:95:17)
at Interface._onLine (readline.js:203:10)
at Interface._line (readline.js:532:8)
at Interface._ttyWrite (readline.js:761:14)
at ReadStream.onkeypress (readline.js:100:10)
at ReadStream.emit (events.js:98:17)
at emitKey (readline.js:1096:12) */
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment