| @@ -173,19 +173,17 @@ let QRCode; |
| 173 |
173 |
} |
| 174 |
174 |
}, setupTypeNumber: function (test) { |
| 175 |
175 |
const bits = QRUtil.getBCHTypeNumber(this.typeNumber); |
| 176 |
|
- for (var i = 0; i < 18; i++) { |
| 177 |
|
- var mod = (!test && ((bits >> i) & 1) === 1); |
| 178 |
|
- this.modules[Math.floor(i / 3)][i % 3 + this.moduleCount - 8 - 3] = mod; |
|
176 |
+ for (let i = 0; i < 18; i++) { |
|
177 |
+ this.modules[Math.floor(i / 3)][i % 3 + this.moduleCount - 8 - 3] = (!test && ((bits >> i) & 1) === 1); |
| 179 |
178 |
} |
| 180 |
|
- for (var i = 0; i < 18; i++) { |
| 181 |
|
- var mod = (!test && ((bits >> i) & 1) === 1); |
| 182 |
|
- this.modules[i % 3 + this.moduleCount - 8 - 3][Math.floor(i / 3)] = mod; |
|
179 |
+ for (let i = 0; i < 18; i++) { |
|
180 |
+ this.modules[i % 3 + this.moduleCount - 8 - 3][Math.floor(i / 3)] = (!test && ((bits >> i) & 1) === 1); |
| 183 |
181 |
} |
| 184 |
182 |
}, setupTypeInfo: function (test, maskPattern) { |
| 185 |
183 |
const data = (this.errorCorrectLevel << 3) | maskPattern; |
| 186 |
184 |
const bits = QRUtil.getBCHTypeInfo(data); |
| 187 |
|
- for (var i = 0; i < 15; i++) { |
| 188 |
|
- var mod = (!test && ((bits >> i) & 1) === 1); |
|
185 |
+ for (let i = 0; i < 15; i++) { |
|
186 |
+ let mod = (!test && ((bits >> i) & 1) === 1); |
| 189 |
187 |
if (i < 6) { |
| 190 |
188 |
this.modules[i][8] = mod; |
| 191 |
189 |
} else if (i < 8) { |
| @@ -194,8 +192,8 @@ let QRCode; |
| 194 |
192 |
this.modules[this.moduleCount - 15 + i][8] = mod; |
| 195 |
193 |
} |
| 196 |
194 |
} |
| 197 |
|
- for (var i = 0; i < 15; i++) { |
| 198 |
|
- var mod = (!test && ((bits >> i) & 1) === 1); |
|
195 |
+ for (let i = 0; i < 15; i++) { |
|
196 |
+ let mod = (!test && ((bits >> i) & 1) === 1); |
| 199 |
197 |
if (i < 8) { |
| 200 |
198 |
this.modules[8][this.moduleCount - i - 1] = mod; |
| 201 |
199 |
} else if (i < 9) { |
| @@ -246,14 +244,14 @@ let QRCode; |
| 246 |
244 |
QRCodeModel.createData = function (typeNumber, errorCorrectLevel, dataList) { |
| 247 |
245 |
const rsBlocks = QRRSBlock.getRSBlocks(typeNumber, errorCorrectLevel); |
| 248 |
246 |
const buffer = new QRBitBuffer(); |
| 249 |
|
- for (var i = 0; i < dataList.length; i++) { |
|
247 |
+ for (let i = 0; i < dataList.length; i++) { |
| 250 |
248 |
const data = dataList[i]; |
| 251 |
249 |
buffer.put(data.mode, 4); |
| 252 |
250 |
buffer.put(data.getLength(), QRUtil.getLengthInBits(data.mode, typeNumber)); |
| 253 |
251 |
data.write(buffer); |
| 254 |
252 |
} |
| 255 |
253 |
let totalDataCount = 0; |
| 256 |
|
- for (var i = 0; i < rsBlocks.length; i++) { |
|
254 |
+ for (let i = 0; i < rsBlocks.length; i++) { |
| 257 |
255 |
totalDataCount += rsBlocks[i].dataCount; |
| 258 |
256 |
} |
| 259 |
257 |
if (buffer.getLengthInBits() > totalDataCount * 8) { |
| @@ -287,13 +285,13 @@ let QRCode; |
| 287 |
285 |
let maxEcCount = 0; |
| 288 |
286 |
const dcdata = new Array(rsBlocks.length); |
| 289 |
287 |
const ecdata = new Array(rsBlocks.length); |
| 290 |
|
- for (var r = 0; r < rsBlocks.length; r++) { |
|
288 |
+ for (let r = 0; r < rsBlocks.length; r++) { |
| 291 |
289 |
const dcCount = rsBlocks[r].dataCount; |
| 292 |
290 |
const ecCount = rsBlocks[r].totalCount - dcCount; |
| 293 |
291 |
maxDcCount = Math.max(maxDcCount, dcCount); |
| 294 |
292 |
maxEcCount = Math.max(maxEcCount, ecCount); |
| 295 |
293 |
dcdata[r] = new Array(dcCount); |
| 296 |
|
- for (var i = 0; i < dcdata[r].length; i++) { |
|
294 |
+ for (let i = 0; i < dcdata[r].length; i++) { |
| 297 |
295 |
dcdata[r][i] = 0xff & buffer.buffer[i + offset]; |
| 298 |
296 |
} |
| 299 |
297 |
offset += dcCount; |
| @@ -301,26 +299,26 @@ let QRCode; |
| 301 |
299 |
const rawPoly = new QRPolynomial(dcdata[r], rsPoly.getLength() - 1); |
| 302 |
300 |
const modPoly = rawPoly.mod(rsPoly); |
| 303 |
301 |
ecdata[r] = new Array(rsPoly.getLength() - 1); |
| 304 |
|
- for (var i = 0; i < ecdata[r].length; i++) { |
|
302 |
+ for (let i = 0; i < ecdata[r].length; i++) { |
| 305 |
303 |
const modIndex = i + modPoly.getLength() - ecdata[r].length; |
| 306 |
304 |
ecdata[r][i] = (modIndex >= 0) ? modPoly.get(modIndex) : 0; |
| 307 |
305 |
} |
| 308 |
306 |
} |
| 309 |
307 |
let totalCodeCount = 0; |
| 310 |
|
- for (var i = 0; i < rsBlocks.length; i++) { |
|
308 |
+ for (let i = 0; i < rsBlocks.length; i++) { |
| 311 |
309 |
totalCodeCount += rsBlocks[i].totalCount; |
| 312 |
310 |
} |
| 313 |
311 |
const data = new Array(totalCodeCount); |
| 314 |
312 |
let index = 0; |
| 315 |
|
- for (var i = 0; i < maxDcCount; i++) { |
| 316 |
|
- for (var r = 0; r < rsBlocks.length; r++) { |
|
313 |
+ for (let i = 0; i < maxDcCount; i++) { |
|
314 |
+ for (let r = 0; r < rsBlocks.length; r++) { |
| 317 |
315 |
if (i < dcdata[r].length) { |
| 318 |
316 |
data[index++] = dcdata[r][i]; |
| 319 |
317 |
} |
| 320 |
318 |
} |
| 321 |
319 |
} |
| 322 |
|
- for (var i = 0; i < maxEcCount; i++) { |
| 323 |
|
- for (var r = 0; r < rsBlocks.length; r++) { |
|
320 |
+ for (let i = 0; i < maxEcCount; i++) { |
|
321 |
+ for (let r = 0; r < rsBlocks.length; r++) { |
| 324 |
322 |
if (i < ecdata[r].length) { |
| 325 |
323 |
data[index++] = ecdata[r][i]; |
| 326 |
324 |
} |
| @@ -328,7 +326,7 @@ let QRCode; |
| 328 |
326 |
} |
| 329 |
327 |
return data; |
| 330 |
328 |
}; |
| 331 |
|
- var QRMode = {MODE_NUMBER: 1 << 0, MODE_ALPHA_NUM: 1 << 1, MODE_8BIT_BYTE: 1 << 2, MODE_KANJI: 1 << 3}; |
|
329 |
+ let QRMode = {MODE_NUMBER: 1 << 0, MODE_ALPHA_NUM: 1 << 1, MODE_8BIT_BYTE: 1 << 2, MODE_KANJI: 1 << 3}; |
| 332 |
330 |
const QRErrorCorrectLevel = {L: 1, M: 0, Q: 3, H: 2}; |
| 333 |
331 |
const QRMaskPattern = { |
| 334 |
332 |
PATTERN000: 0, |
| @@ -340,7 +338,7 @@ let QRCode; |
| 340 |
338 |
PATTERN110: 6, |
| 341 |
339 |
PATTERN111: 7 |
| 342 |
340 |
}; |
| 343 |
|
- var QRUtil = { |
|
341 |
+ let QRUtil = { |
| 344 |
342 |
PATTERN_POSITION_TABLE: [[], [6, 18], [6, 22], [6, 26], [6, 30], [6, 34], [6, 22, 38], [6, 24, 42], [6, 26, 46], [6, 28, 50], [6, 30, 54], [6, 32, 58], [6, 34, 62], [6, 26, 46, 66], [6, 26, 48, 70], [6, 26, 50, 74], [6, 30, 54, 78], [6, 30, 56, 82], [6, 30, 58, 86], [6, 34, 62, 90], [6, 28, 50, 72, 94], [6, 26, 50, 74, 98], [6, 30, 54, 78, 102], [6, 28, 54, 80, 106], [6, 32, 58, 84, 110], [6, 30, 58, 86, 114], [6, 34, 62, 90, 118], [6, 26, 50, 74, 98, 122], [6, 30, 54, 78, 102, 126], [6, 26, 52, 78, 104, 130], [6, 30, 56, 82, 108, 134], [6, 34, 60, 86, 112, 138], [6, 30, 58, 86, 114, 142], [6, 34, 62, 90, 118, 146], [6, 30, 54, 78, 102, 126, 150], [6, 24, 50, 76, 102, 128, 154], [6, 28, 54, 80, 106, 132, 158], [6, 32, 58, 84, 110, 136, 162], [6, 26, 54, 82, 110, 138, 166], [6, 30, 58, 86, 114, 142, 170]], |
| 345 |
343 |
G15: (1 << 10) | (1 << 8) | (1 << 5) | (1 << 4) | (1 << 2) | (1 << 1) | (1 << 0), |
| 346 |
344 |
G18: (1 << 12) | (1 << 11) | (1 << 10) | (1 << 9) | (1 << 8) | (1 << 5) | (1 << 2) | (1 << 0), |
| @@ -446,8 +444,8 @@ let QRCode; |
| 446 |
444 |
getLostPoint: function (qrCode) { |
| 447 |
445 |
const moduleCount = qrCode.getModuleCount(); |
| 448 |
446 |
let lostPoint = 0; |
| 449 |
|
- for (var row = 0; row < moduleCount; row++) { |
| 450 |
|
- for (var col = 0; col < moduleCount; col++) { |
|
447 |
+ for (let row = 0; row < moduleCount; row++) { |
|
448 |
+ for (let col = 0; col < moduleCount; col++) { |
| 451 |
449 |
let sameCount = 0; |
| 452 |
450 |
const dark = qrCode.isDark(row, col); |
| 453 |
451 |
for (let r = -1; r <= 1; r++) { |
| @@ -471,8 +469,8 @@ let QRCode; |
| 471 |
469 |
} |
| 472 |
470 |
} |
| 473 |
471 |
} |
| 474 |
|
- for (var row = 0; row < moduleCount - 1; row++) { |
| 475 |
|
- for (var col = 0; col < moduleCount - 1; col++) { |
|
472 |
+ for (let row = 0; row < moduleCount - 1; row++) { |
|
473 |
+ for (let col = 0; col < moduleCount - 1; col++) { |
| 476 |
474 |
let count = 0; |
| 477 |
475 |
if (qrCode.isDark(row, col)) count++; |
| 478 |
476 |
if (qrCode.isDark(row + 1, col)) count++; |
| @@ -483,23 +481,23 @@ let QRCode; |
| 483 |
481 |
} |
| 484 |
482 |
} |
| 485 |
483 |
} |
| 486 |
|
- for (var row = 0; row < moduleCount; row++) { |
| 487 |
|
- for (var col = 0; col < moduleCount - 6; col++) { |
|
484 |
+ for (let row = 0; row < moduleCount; row++) { |
|
485 |
+ for (let col = 0; col < moduleCount - 6; col++) { |
| 488 |
486 |
if (qrCode.isDark(row, col) && !qrCode.isDark(row, col + 1) && qrCode.isDark(row, col + 2) && qrCode.isDark(row, col + 3) && qrCode.isDark(row, col + 4) && !qrCode.isDark(row, col + 5) && qrCode.isDark(row, col + 6)) { |
| 489 |
487 |
lostPoint += 40; |
| 490 |
488 |
} |
| 491 |
489 |
} |
| 492 |
490 |
} |
| 493 |
|
- for (var col = 0; col < moduleCount; col++) { |
| 494 |
|
- for (var row = 0; row < moduleCount - 6; row++) { |
|
491 |
+ for (let col = 0; col < moduleCount; col++) { |
|
492 |
+ for (let row = 0; row < moduleCount - 6; row++) { |
| 495 |
493 |
if (qrCode.isDark(row, col) && !qrCode.isDark(row + 1, col) && qrCode.isDark(row + 2, col) && qrCode.isDark(row + 3, col) && qrCode.isDark(row + 4, col) && !qrCode.isDark(row + 5, col) && qrCode.isDark(row + 6, col)) { |
| 496 |
494 |
lostPoint += 40; |
| 497 |
495 |
} |
| 498 |
496 |
} |
| 499 |
497 |
} |
| 500 |
498 |
let darkCount = 0; |
| 501 |
|
- for (var col = 0; col < moduleCount; col++) { |
| 502 |
|
- for (var row = 0; row < moduleCount; row++) { |
|
499 |
+ for (let col = 0; col < moduleCount; col++) { |
|
500 |
+ for (let row = 0; row < moduleCount; row++) { |
| 503 |
501 |
if (qrCode.isDark(row, col)) { |
| 504 |
502 |
darkCount++; |
| 505 |
503 |
} |
| @@ -510,7 +508,7 @@ let QRCode; |
| 510 |
508 |
return lostPoint; |
| 511 |
509 |
} |
| 512 |
510 |
}; |
| 513 |
|
- var QRMath = { |
|
511 |
+ let QRMath = { |
| 514 |
512 |
glog: function (n) { |
| 515 |
513 |
if (n < 1) { |
| 516 |
514 |
throw new Error("glog(" + n + ")"); |
| @@ -526,13 +524,13 @@ let QRCode; |
| 526 |
524 |
return QRMath.EXP_TABLE[n]; |
| 527 |
525 |
}, EXP_TABLE: new Array(256), LOG_TABLE: new Array(256) |
| 528 |
526 |
}; |
| 529 |
|
- for (var i = 0; i < 8; i++) { |
|
527 |
+ for (let i = 0; i < 8; i++) { |
| 530 |
528 |
QRMath.EXP_TABLE[i] = 1 << i; |
| 531 |
529 |
} |
| 532 |
|
- for (var i = 8; i < 256; i++) { |
|
530 |
+ for (let i = 8; i < 256; i++) { |
| 533 |
531 |
QRMath.EXP_TABLE[i] = QRMath.EXP_TABLE[i - 4] ^ QRMath.EXP_TABLE[i - 5] ^ QRMath.EXP_TABLE[i - 6] ^ QRMath.EXP_TABLE[i - 8]; |
| 534 |
532 |
} |
| 535 |
|
- for (var i = 0; i < 255; i++) { |
|
533 |
+ for (let i = 0; i < 255; i++) { |
| 536 |
534 |
QRMath.LOG_TABLE[QRMath.EXP_TABLE[i]] = i; |
| 537 |
535 |
} |
| 538 |
536 |
|
| @@ -569,10 +567,10 @@ let QRCode; |
| 569 |
567 |
} |
| 570 |
568 |
const ratio = QRMath.glog(this.get(0)) - QRMath.glog(e.get(0)); |
| 571 |
569 |
const num = new Array(this.getLength()); |
| 572 |
|
- for (var i = 0; i < this.getLength(); i++) { |
|
570 |
+ for (let i = 0; i < this.getLength(); i++) { |
| 573 |
571 |
num[i] = this.get(i); |
| 574 |
572 |
} |
| 575 |
|
- for (var i = 0; i < e.getLength(); i++) { |
|
573 |
+ for (let i = 0; i < e.getLength(); i++) { |
| 576 |
574 |
num[i] ^= QRMath.gexp(QRMath.glog(e.get(i)) + ratio); |
| 577 |
575 |
} |
| 578 |
576 |
return new QRPolynomial(num, 0).mod(e); |
| @@ -707,7 +705,7 @@ let QRCode; |
| 707 |
705 |
const useSVG = document.documentElement.tagName.toLowerCase() === "svg"; |
| 708 |
706 |
|
| 709 |
707 |
|
| 710 |
|
- var Drawing = useSVG ? svgDrawer : !_isSupportCanvas() ? (function () { |
|
708 |
+ let Drawing = useSVG ? svgDrawer : !_isSupportCanvas() ? (function () { |
| 711 |
709 |
const Drawing = function (el, htOption) { |
| 712 |
710 |
this._el = el; |
| 713 |
711 |
this._htOption = htOption; |
| @@ -977,7 +975,7 @@ let QRCode; |
| 977 |
975 |
* new QRCode(document.getElementById("test"), "http://jindo.dev.naver.com/collie"); |
| 978 |
976 |
* |
| 979 |
977 |
* @example |
| 980 |
|
- * var oQRCode = new QRCode("test", { |
|
978 |
+ * let oQRCode = new QRCode("test", { |
| 981 |
979 |
* text : "http://naver.com", |
| 982 |
980 |
* width : 128, |
| 983 |
981 |
* height : 128 |