Javascript library

NameCopyCodeKeywords
For loop
for (var i = 0; i < n; i++)
{
	// Do something
}
loop, for, block
Double for loop
for (var i = 0; i < n; i++)
{
	for (var j = 0; j < n; j++)
	{
		// Do something
	}
}
loop, for, block
While loop
var continueLoop = true;

while (continueLoop)
{
	// Do something
}
loop, while, block
If block
var conditionOk = true;

if (conditionOk === true)
{
	// Do something
}
if, block
Create function without parameters
var myFunction = function()
{
	// Do something
}
function
Create function with parameters
var myFunction = function($param)
{
	// Do something
}
function
Create regex
var myRegex = new RegExp("[a-z]");
var matchMyRegex = inputStr.match(myRegex);
regex
Ondrop event
myNode.ondrop = function($event)
{
	// Do something
};

myNode.ondragover = preventDefault;
drop, ondrop, files, events
Get dropped files
var accept = ['text/html'];
var dropped = [];
var accepted = [];
var ready = [];

var onReady = function($callback)
{
	if (ready.length >= accepted.length)
		$callback(ready);
};

var loadFile = function($event, $callback)
{
	preventDefault($event);

	dropped = [];
	accepted = [];
	ready = [];

	var effectAllowed = $event.dataTransfer.effectAllowed;

	if (effectAllowed === "all")
	{
		dropped = $event.dataTransfer.files;
		
		for (var i = 0; i < dropped.length; i++)
		{
			if (accept.length <= 0 || accept.indexOf(dropped[i].type) >= 0)
				accepted.push(dropped[i]);
		}

		for (var i = 0; i < accepted.length; i++)
		{
			var file = accepted[i];

			var reader = new FileReader();
			reader.name = file.name;
			reader.type = file.type;
			reader.path = file.path;
			
			reader.onload = function ($event)
			{
				var fileData = $event.target.result;
				var fileName = this.name;
				var fileType = this.type;
				var filePath = this.path;
				
				ready.push({ name: fileName, path: filePath, type: fileType, data: fileData });
				onReady($callback);
			};
			
			if (/^image/.test(file.type) || /^application\/pdf/.test(file.type))
				reader.readAsDataURL(file);
			else if (/^text/.test(file.type) || file.type === 'application/json')
				reader.readAsText(file);
		}
	}
};
drop, ondrop, files
Get scroll position
var scrollX = element.scrollLeft;
var scrollY = element.scrollTop;
events, scroll
Get scroll size
var scrollWidth = element.scrollWidth;
var scrollHeight = element.scrollHeight;
events, scroll
Force scroll position
if (element.scrollTo !== undefined && element.scrollTo !== null)
	element.scrollTo(scrollX, scrollY);
else
{
	element.scrollLeft = scrollX;
	element.scrollTop = scrollY;
}
events, scroll
To clipboard
if (!navigator.clipboard)
{
	var textArea = document.createElement("textarea");
	textArea.value = "Hello world !";
	
	textArea.style.top = "-1000000000px";
	textArea.style.left = "-1000000000px";
	textArea.style.width = "100px";
	textArea.style.height = "100px";
	textArea.style.position = "absolute";
	
	document.body.appendChild(textArea);
	textArea.focus();
	textArea.select();
	
	try
	{
		var successful = document.execCommand("copy");
		
		if (successful)
		{
			// Something to do...
		} 
		else
		{
			// Something to do...
		} 
	}
	catch ($error) 
	{
		// Something to do...
	} 
	
	document.body.removeChild(textArea);
}
else
{
	navigator.clipboard.writeText("Hello world !").then(function()
	{
		// Something to do...
	}, 
	function($error) 
	{
		// Something to do...
	});
}
clipboard
Create timer
var timer = setInterval(function() { /* Do something */ }, 20);
timer, animation
Stop timer
clearTimeout(timer);
timer, animation