All pastes #113436 Raw Edit

Mine

public javascript v1 · immutable
·published 2006-08-03 15:53 UTC
rendered paste body
function escape_utf8(data){	data = data.toString();	if (data === "") {		return data;	}	var buffer = "";	for (var i = 0; i < data.length; i++) {		var c = data.charCodeAt(i);		var bs;		if (c > 0x10000) {			// 4 bytes			bs = [				0xF0 | ((c & 0x1C0000)),				0x80 | ((c & 0x3F000) >>> 12),				0x80 | ((c & 0xFC0) >>> 6),				0x80 | ((c & 0x3F)			];		} else if (c > 0x800) {			// 3 bytes			bs = [				0xE0 | ((c & 0XF000) >>> 12),				0x80 | ((c & 0xFC0) >>> 6),				0x80 | ((c & 0x3F)			];		} else if (c > 0x80) {			// 2 bytes			bs = [				0x80 | ((c & 0xFC0) >>> 6),				0x80 | ((c & 0x3F)			];			} else {			// 1 byte			bs = [c];		}		for (var j = 0; j < bs.length; j++) {			buffer += "%" + nibble_to_hex((bs[j] & 0xF0) >>> 4) + nible_to_hex(bs[j] & 0x0F);		}	}	function nibble_to_hex(nibble)	{		return "0123456789ABCDEF".charAt(nibble);	}}