Skip to content

Instantly share code, notes, and snippets.

View samkahchiin's full-sized avatar
🎯
Focusing

Sam Kah Chiin samkahchiin

🎯
Focusing
View GitHub Profile
@samkahchiin
samkahchiin / convert.js
Created March 27, 2016 11:59
freecodecamp : Convert HTML Entities
function convert(str) {
// :)
return str.replace(/&/g, "&amp;").replace(/>/g, "&gt;").replace(/</g, "&lt;").replace(/"/g, "&quot;").replace(/'/g,"&apos;");
}
convert("Dolce & Gabbana");
@samkahchiin
samkahchiin / spinalCase.js
Last active March 27, 2016 12:36
freecodecamp : Spinal Tap Case
function spinalCase(str) {
return str.replace(/([a-z])([A-Z])/g, '$1 $2').toLowerCase().replace(/[_\s]/g,"-");
}
spinalCase("Teletubbies say Eh-oh");
spinalCase('thisIsSpinalTap');
@samkahchiin
samkahchiin / fibonacci.js
Created March 27, 2016 13:04
freecodecamp : Sum All Odd Fibonacci Numbers
function sumFibs(num) {
var i = 0;
var arr = [0,1];
while(arr[i] + arr[i+1] <= num){
arr.push(arr[i] + arr[i+1]);
i++;
}
@samkahchiin
samkahchiin / sumPrimes.js
Created March 27, 2016 13:19
freecodecamp : Sum All Primes
function sumPrimes(num) {
var sum = 0;
for(var i = 2; i <= num; i++){
if(isPrime(i) === true){
sum += i;
}
}
return sum;
}
@samkahchiin
samkahchiin / lcm.js
Created March 27, 2016 13:56
freecodecamp : Smallest Common Multiple
function smallestCommons(arr) {
return numInRange(arr).reduce(function(a,b){
return lcm(a,b);
});
}
function gcd (x, y) {
return (x % y === 0) ? y : gcd(y, x % y);
}
@samkahchiin
samkahchiin / find.js
Created March 27, 2016 14:00
freecodecamp : Finders Keepers
function find(arr, func) {
return arr.filter(func).shift();
}
find([1, 2, 3, 4], function(num){ return num % 2 === 0; });
@samkahchiin
samkahchiin / drop.js
Created March 27, 2016 14:36
freecodecamp : Drop it
function drop(arr, func) {
var first_elem = arr.filter(func).shift();
return (first_elem === undefined) ? [] : arr.slice(arr.indexOf(first_elem));
}
drop([1, 2, 3, 4], function(n) {return n > 5;});
drop([1, 2, 3], function(n) {return n < 3; });
@samkahchiin
samkahchiin / flat.js
Created March 27, 2016 14:43
freecodecamp : Steamroller
function steamroller(arr) {
return flatten(arr);
}
function flatten(arr) {
return arr.reduce(function(flat,toBeFlatten){
return flat.concat(Array.isArray(toBeFlatten) ? flatten(toBeFlatten) : toBeFlatten);
}, []);
}
@samkahchiin
samkahchiin / binary.js
Created March 27, 2016 15:02
freecodecamp : Binary Agents
function binaryAgent(str) {
var new_str = str.split(" ").map(function(x){
return String.fromCharCode(parseInt(x,2));
});
return new_str.join("");
}
binaryAgent("01000001 01110010 01100101 01101110 00100111 01110100 00100000 01100010 01101111 01101110 01100110 01101001 01110010 01100101 01110011 00100000 01100110 01110101 01101110 00100001 00111111");
@samkahchiin
samkahchiin / every.js
Created March 27, 2016 16:05
freecodecamp : Everything Be True
function every(collection, pre) {
for(var x in collection){
if(collection[x].hasOwnProperty(pre)){
if(!collection[x][pre]){
return false;
}
}else{
return false;
}
}