-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathhelper.js
72 lines (64 loc) · 1.6 KB
/
helper.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
var reference = {
'0': '⁠',
'1': '⁡',
'2': '⁢',
'3': '⁣'
}
var characters = {
'a': '000',
'b': '001',
'c': '002',
'd': '003',
'e': '010',
'f': '011',
'g': '012',
'h': '013',
'i': '020',
'j': '021',
'k': '022',
'l': '023',
'm': '030',
'n': '031',
'o': '032',
'p': '033',
'q': '100',
'r': '101',
's': '102',
't': '103',
'u': '110',
'v': '111',
'w': '112',
'x': '113',
'y': '120',
'z': '121',
' ': '122'
}
var charactersEncode = function () {
var result = {}
for (var character in characters) {
var characterHash = characters[character]
var newHash = ''
newHash += characterHash[0].replace(new RegExp(characterHash[0]), reference[characterHash[0]])
newHash += characterHash[1].replace(new RegExp(characterHash[1]), reference[characterHash[1]])
newHash += characterHash[2].replace(new RegExp(characterHash[2]), reference[characterHash[2]])
result[character] = newHash
}
return result
}
var charactersDecode = function () {
var result = {}
for (var character in characters) {
var characterHash = characters[character]
var newHash = ''
newHash += characterHash[0].replace(new RegExp(characterHash[0]), reference[characterHash[0]])
newHash += characterHash[1].replace(new RegExp(characterHash[1]), reference[characterHash[1]])
newHash += characterHash[2].replace(new RegExp(characterHash[2]), reference[characterHash[2]])
result[newHash.replace(/&|#|;/g, '')] = character
}
return result
}
var result = {
encode: charactersEncode(),
decode: charactersDecode()
}
console.log(result)