Skip to content

Instantly share code, notes, and snippets.

robert.edgar blackmambahk

  • Hong Kong SAR China
Block or report user

Report or block blackmambahk

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
@blackmambahk
blackmambahk / ready.js
Created Oct 14, 2018
Replacement for jQuery ready
View ready.js
//replacement for jQUery ready
document.addEventListener("DOMContentLoaded", function(event) {
//do work
});
@blackmambahk
blackmambahk / hash.js
Last active Oct 14, 2018
String Hash function
View hash.js
//this uses a 32bit hash with a 1/100000 collison prob for a 300 string cache
//this can has hash a 5k string 15000 per sec
//so lets say about 500 messages per msec
String.prototype.hashCode = function() {
var hash = 0, i, chr, len;
if (this.length == 0) return hash;
for (i = 0, len = this.length; i < len; i++) {
chr = this.charCodeAt(i);
hash = ((hash << 5) - hash) + chr;
hash = hash && hash; // hash |= 0; Convert to 32bit integer
@blackmambahk
blackmambahk / fmt-example.js
Last active Oct 14, 2018
More template 'fmt' examples
View fmt-example.js
{{fmt:'%d',@field1}}
{{:@field:d}}
{{:format('%d',@field1)}}
{{:format('%d',@field1) + format('d',@field2)}}
{{fmt:'%d',db.props@field1}}
@blackmambahk
blackmambahk / fmt.js
Last active Oct 14, 2018
Example of a template 'fmt' directive
View fmt.js
{{fmt:'The %1 job is done. What %2 to do next?', @field1, @field2}}
//assumes we have added the Array Generics polyfill
//replacement elements start at 1 not 0
//this code actually goes in the main format utility function
var reFmt1 = /%(\d+)/g;
function formatReplace(str) {
var args = Array.slice(arguments);
You can’t perform that action at this time.