Skip to content

Instantly share code, notes, and snippets.

@Kamilnaja
Last active April 16, 2017 13:07
Show Gist options
  • Save Kamilnaja/0af6443b350479ea19787f68f1edd859 to your computer and use it in GitHub Desktop.
Save Kamilnaja/0af6443b350479ea19787f68f1edd859 to your computer and use it in GitHub Desktop.
module pattern - self invoced function
var myModule = {
animals: ['dog', 'cat', 'bird'],
addNewElement: function (newAnimal) {
var elementToAdd;
if (typeof newAnimal !== 'string') {
elementToAdd = document.querySelector('#animal').value();
} else {
elementToAdd = newAnimal;
}
if (elementToAdd !== '') {
this.animals.push(elementToAdd);
}
},
displayList: function () {
var list = document.querySelector('#list');
if (list == null) {
list = document.createElement('ul');
list.id = list;
document.querySelector('body').appendChild(list);
}
list.innerHTML = '';
this.animals.forEach(function (el, i) {
var element = document.createElement('li');
element.innerHTML = el;
list.appendChild(element);
});
},
bindEvents : function () {
document.querySelector('#number').addEventListener('click', addNewElement.bind(this));
document.querySelector('#show').addEventListener('click', displayList.bind(this));
},
init: function () {
bindEvents();
displayList();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment