>  기사  >  웹 프론트엔드  >  JavaScript 갭 제로 패딩 구현 코드

JavaScript 갭 제로 패딩 구현 코드

高洛峰
高洛峰원래의
2017-01-07 16:25:361343검색

구현 1:

/* 平淡无奇法 */ 
function pad(num, n) { 
var i = (num + "").length; 
while(i++ < n) num = "0" + num; 
return num; 
}

위 코드는 너무 밋밋하고 실제 수준을 반영하지 않습니다. 그래서 두 가지 구현이 있습니다:

/* 神奇递归法 */ 
function pad2(num, n) { 
if ((num + "").length >= n) return num; 
return pad2("0" + num, n); 
}

마법의 재귀는 mm이 매번 그녀를 칭찬하고 감탄하게 만들 수 있습니다~~
하지만 마스터들이 서로 경쟁할 때 중요한 것은 치명적인 움직임입니다 . 위의 코드는 실제로 두 줄을 사용하는데 이는 단순히 모욕적입니다. 곰곰이 생각해 보니 한 줄의 마법의 코드가 떠올랐습니다.

/* 奇淫技巧法 */ 
function pad3(num, n) { 
return (Array(n).join(0) + num).slice(-n); 
}

이번엔 ㅋㅋㅋ 감탄하며 쳐다보네요 히히아~~
=== 저는 공간 구분자가 아니고, 나는 시간의 길고 긴 구분선입니다. n년 만에 ===
가을 공기가 선선해진 어느 날, 마음이 여유롭고 행복했습니다. 친구들과 함께 보리수 아래에 앉아 와인을 마시고 체스도 두었습니다.
친구가 말했다: BP, 당신이 떠난 이후로 나에게 상처를 줬어요. 당신이 남긴 마법의 코드 때문에 내 머리카락이 3년 일찍 빠졌어요.
충격을 받았습니다. 어떻게 이런 말을 할 수 있을까요?
친구가 당황한 표정으로 뒤를 돌아보며: 그 마법의 패드3 기능을 기억하시나요? 떠난 지 1년 만에 사업이 급증했다. pad3에 버그가 있어서 숫자의 첫자리가 잘리는 경우가 있습니다. 예를 들어 pad3(123456, 5)는 23456을 반환합니다. 이 버그는 해커에 의해 발견되었으며 이로 인해 여러 대규모 피싱 사고가 발생했고 회사는 수백만 달러의 손실을 입었습니다. 당시 상사는 나에게 하루 안에 버그를 찾으라고 명령했지만, 당신의 매직 코드는 버그를 찾는 데 3일이 걸렸습니다. pad3 말고도 마법의 xxoo9 기능도 있는데 그때는...
오래된 친구가 계속 수다를 떨고 있었는데, 첫 문단만 듣고는 정신이 없었습니다. 고개를 숙이고 pad3의 글쓰기 방법을 생각해 봤습니다. 정말 차단 버그가 있습니다. 이것은 거래 시스템에서 사용됩니다.
오래된 친구와 작별 인사를 하고는 참을 수가 없었습니다. GoogleFace 클라우드에서 pad3 및 xxoo9 및 기타 코드를 검색한 후, 저는 충격을 받았습니다.
tricky_code.html
pad3에는 문자 가로채기 버그뿐만 아니라 성능 문제도 있었습니다...
엄청난 이념투쟁.
혼란 속에서 나는 멀리서 당승이 웃으며 오는 것을 보았다.
세상 사람들은 나의 말장난을 비웃으나 세상은 나의 길을 이해하지 못한다.
이 혼란을 해결하려면 단순함이 진정한 지식입니다.
당승이 두루마리를 던지고 웃었다:

/* 质朴长存法 */ 
function pad(num, n) { 
var len = num.toString().length; 
while(len < n) { 
num = "0" + num; 
len++; 
} 
return num; 
}

나도 보고 웃으면서 당승과 함께 경전을 배우러 갔다...
참고: 나는 늘 하고 싶었다. 그런 기사를 써라. 오늘 51js를 돌아다니다가 우연히 글을 봤습니다. 앞에 0을 추가하기에는 숫자가 부족해서 바로 이 글의 아이디어가 떠올랐습니다. 제로 패딩과 관련하여 내 이상한 반응은 return Array(n - ("" + num).length + 1).join(0) + num(버그도 있음)입니다. 이는 Guoguo와 유사하지만 충격 값을 고려합니다. (Guoguo의 버그는 더 숨겨져 있습니다.) 마지막으로 Guoguo의 코드를 예로 사용합니다. 어쨌든, Guoguo에게 감사드립니다.

자바스크립트 갭 제로 필링 구현 코드 관련 기사를 더 보려면 PHP 중국어 웹사이트를 주목하세요!


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.