Skip to content

Instantly share code, notes, and snippets.

HE Shi-Jun hax

Block or report user

Report or block hax

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@hax
hax / readonly.js
Created Dec 4, 2018
readonly collections
View readonly.js
void function () {
'use strict'
const targetSymbol = Symbol()
function createSafeMethod(method) {
return new Proxy(method, {
apply(target, thisArg, argArray) {
return Reflect.apply(target, thisArg[targetSymbol], argArray)
}
View node6-stdout-patch.js
// See https://github.com/nodejs/node/issues/6456
import {platform} from 'os'
import {satisfies} from 'semver'
if (platform() === 'darwin' && satisfies(process.version, '>=6.0.0 <6.2.1')) {
for (const s of [process.stdout, process.stderr]) {
if (s && s.isTTY && s._handle && typeof s._handle.setBlocking === 'function') {
s._handle.setBlocking(true)
}
@hax
hax / index.js
Created Dec 7, 2016
log with calling location info in Node.js
View index.js
const {main} = require('./main')
main()
@hax
hax / test-block-scope-performance.js
Created Apr 30, 2016
block scope optimization test
View test-block-scope-performance.js
'use strict'
const Benchmark = require('benchmark')
function MASK() {
return 100
}
function MAX() {
@hax
hax / hi-bot.js
Created Jan 5, 2016
detect robot
View hi-bot.js
void function () {
if (!window.tracker) {
return;
}
var events = ['scroll', 'click', 'mousemove', 'keydown', 'mousedown'];
for (var i = 0; i < events.length; i++) {
addHandler(document, events[i], detect);
}
function detect(event) {
for (var i = 0; i < events.length; i++) {
View index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JS Bin</title>
</head>
<body>
<script id="jsbin-javascript">
// See https://github.com/promises-aplus/promises-spec/issues/179
View index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JS Bin</title>
</head>
<body>
<script id="jsbin-javascript">
// See https://github.com/promises-aplus/promises-spec/issues/179
View dabblet.css
header {
color: white;
background: navy;
height: 60px;
position: fixed;
left: 0;
right: 0;
top: 0;
}
@hax
hax / safe_json_encode.php
Last active Sep 4, 2018
PHP safe json encode
View safe_json_encode.php
<?php
function safe_json_encode($data) {
// We might have been tolerant to some common cases such as convert
// INF/NAN as 0 by using JSON_PARTIAL_OUTPUT_ON_ERROR option, but
// sadly `json_last_error()` only get the last error means it may
// override worse errors such as malfored utf-8 which we can't ignore!
// Poor H P !!
$result = @json_encode($data, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);
You can’t perform that action at this time.