JSFiddle - React, Tailwind, and code Playground
by LuckyCat
JavaScript
// 5\task05
/*'use strict';
// Написать функцию, которая изменяет строку под стиль масикровки кредитной карты
// видны должны быть только последние 4 цифры
// если входящая строка меньше 4 цифр, то вовзращать оригинал
function funcName(str) {
}
Например:
funcName('4556364607935616'), '############5616'
funcName('1'), '1'
funcName('11111'), '#1111'
// Solutions:
*/
'use strict';
function funcName(str) {
var length = str.length;
var copyStr = str;
if (length > 4) {
var repalceLength = length - 4;
for (var i = 0; i < repalceLength; ++i) {
str = str.substring(0, i) + "#";
}
var lastSym = copyStr.substring(repalceLength, length);
str += lastSym;
}
console.log("Origin: " + copyStr);
console.log("Result: " + str);
return str;
}
function funcName2(str) {
var length = str.length;
var copyStr = str;
if (length > 4) {
var lastSym = str.slice(-4);
var repalceLength = length - 4;
for (var i = 0; i < repalceLength; ++i) {
str = str.substring(0, i) + "#";
}
str += lastSym;
}
console.log("Origin: " + copyStr);
console.log("Result: " + str);
return str;
}
function funcName3(str) {
var copyStr = str;
str = str.replace(/\d(?=\d{4})/g, "#");
console.log("Origin: " + copyStr);
console.log("Result: " + str);
return str;
}
funcName('4556364607935616');//, '############5616'
funcName('1');//, '1'
funcName('11111');//, '#1111'
console.log("----------------------------");
funcName2('4556364607935616');//, '############5616'
funcName2('1');//, '1'
funcName2('11111');//, '#1111'
console.log("----------------------------");
funcName3('4556364607935616');//, '############5616'
funcName3('1');//, '1'
funcName3('11111');//, ...