DoYouEvenBench: Add Facebook's React TodoMVC test case
[WebKit-https.git] / PerformanceTests / DoYouEvenBench / todomvc / labs / architecture-examples / react / js / utils.jsx
1 (function (window) {
2     'use strict';
3
4     window.Utils = {
5         uuid: function () {
6             /*jshint bitwise:false */
7             var i, random;
8             var uuid = '';
9
10             for (i = 0; i < 32; i++) {
11                 random = Math.random() * 16 | 0;
12                 if (i === 8 || i === 12 || i === 16 || i === 20) {
13                     uuid += '-';
14                 }
15                 uuid += (i === 12 ? 4 : (i === 16 ? (random & 3 | 8) : random))
16                     .toString(16);
17             }
18
19             return uuid;
20         },
21
22         pluralize: function (count, word) {
23             return count === 1 ? word : word + 's';
24         },
25
26         store: function (namespace, data) {
27             if (data) {
28                 return localStorage.setItem(namespace, JSON.stringify(data));
29             }
30
31             var store = localStorage.getItem(namespace);
32             return (store && JSON.parse(store)) || [];
33         },
34
35         stringifyObjKeys: function (obj) {
36             var s = '';
37             var key;
38
39             for (key in obj) {
40                 if (obj.hasOwnProperty(key) && obj[key]) {
41                     s += key + ' ';
42                 }
43             }
44
45             return s.trim();
46         }
47     };
48
49 })(window);