Skip to content

Instantly share code, notes, and snippets.

@johndaley-me
Last active April 29, 2016 15:05
Show Gist options
  • Save johndaley-me/8ad8c9d55f9105e3a6aa to your computer and use it in GitHub Desktop.
Save johndaley-me/8ad8c9d55f9105e3a6aa to your computer and use it in GitHub Desktop.
JavaScript Cheat Sheet
// Regex
var myAllergies = /\bmy (seasonal )?allergies\b/i;
var text = 'My allergies are acting up. I need some medicine.';
if(text.search(myAllergies) > -1) {
}
// Object.defineProperty
function Car() {
}
Object.defineProperty(Car.prototype, 'color', {
get: function() {
return 'blue';
}
});
// memoizer, fibonacci, factorial
function memoizer(memo, formula) {
var recur = function (n) {
var result = memo[n];
if (typeof result !== 'number') {
result = formula(recur, n);
memo[n] = result;
}
return result;
};
return recur;
}
var fibonacci = memoizer([0, 1], function (recur, n) {
return recur(n - 1) + recur(n - 2);
});
var factorial = memoizer([1, 1], function (recur, n) {
return n * recur(n - 1);
});
function isPalindrome(word) {
for (let i = 0; i < word.length/2; i++) {
let first = word[i];
let second = word[word.length - (i + 1)];
if (first !== second) {
return false;
}
}
return true;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment