accessors.js 583 B

1234567891011121314151617181920212223242526272829
  1. (function (Misago) {
  2. 'use strict';
  3. Misago.has = function(obj, key) {
  4. if (obj) {
  5. return obj.hasOwnProperty(key);
  6. } else {
  7. return false;
  8. }
  9. };
  10. Misago.get = function(obj, key, value) {
  11. if (Misago.has(obj, key)) {
  12. return obj[key];
  13. } else if (value !== undefined) {
  14. return value;
  15. } else {
  16. return undefined;
  17. }
  18. };
  19. Misago.pop = function(obj, key, value) {
  20. var returnValue = Misago.get(obj, key, value);
  21. if (Misago.has(obj, key)) {
  22. obj[key] = null;
  23. }
  24. return returnValue;
  25. };
  26. }(Misago.prototype));