2017-11-30 19:16:34 +02:00
2017-11-30 19:16:34 +02:00
2017-11-30 19:16:34 +02:00
2017-11-30 19:12:13 +02:00
2017-11-30 17:40:06 +02:00
2017-11-29 19:35:03 +02:00
2017-11-30 17:40:06 +02:00
2017-11-30 18:29:02 +02:00
2017-11-30 17:40:06 +02:00
2017-11-30 19:16:34 +02:00
2017-11-30 17:40:06 +02:00

Logo

30 seconds of code

Curated collection of useful Javascript snippets that you can understand in 30 seconds or less.

  • Use Ctrl + F or command + F to search for a snippet.
  • Contributions welcome, please read contribution guide.

Contents

Even or odd number

Use Math.abs() to extend logic to negative numbers, check using the modulo (%) operator. Return true if the number is even, false if the number is odd.

var isEven = num => Math.abs(num) % 2 === 0;

Greatest common divisor (GCD)

Use recursion. Base case is when y equals 0. In this case, return x. Otherwise, return the GCD of y and the remainder of the division x/y.

var gcd = (x , y) => !y ? x : gcd(y, x % y);

RGB to hexadecimal

Convert each value to a hexadecimal string, using toString(16), then padStart(2,'0') to get a 2-digit hexadecimal value. Combine values using join('').

var rgbToHex = (r, g, b) =>
  [r.toString(16).padStart(2,'0') , g.toString(16).padStart(2,'0') , b.toString(16).padStart(2,'0')].join('');

Sort characters in string (alphabetical)

Split the string using split(''), sort() utilizing localeCompare(), recombine using join('').

var sortCharactersInString = str =>
  str.split('').sort( (a,b) => a.localeCompare(b) ).join('');

Sum of array of numbers

Use reduce() to add each value to an accumulator, initialized with a value of 0.

var sum = arr =>
  arr.reduce( (acc , val) => acc + val, 0);

Unique values of array

Use reduce() to accumulate all unique values in an array. Check if each value has already been added, using indexOf() on the accumulator array.

var uniqueValues = arr =>
  arr.reduce( (acc, val) => {
    if(acc.indexOf(val) === -1)
      acc.push(val);
      return acc;
  }, []);

Credits

Icons made by Smashicons from www.flaticon.com is licensed by CC 3.0 BY.

Languages
JavaScript 100%