>  기사  >  웹 프론트엔드  >  자바스크립트 사용자 정의 공통 메소드

자바스크립트 사용자 정의 공통 메소드

PHP中文网
PHP中文网원래의
2016-05-16 18:47:541005검색

예를 들어 페이지 문자 처리, js 정규식 확인 등 다음에는 제가 가지고 있는 얕은 개발 경험과 인터넷에 있는 방대한 리소스를 정리하고 정리하여 나중에 필요할 때 검색하지 않도록 하겠습니다. 이번 시리즈에서는 일반적으로 사용되는 기능을 요약, 정리하고 이를 출발점으로 다루겠습니다.
코드가 저렴합니다.
1. 일반적인 문자열 처리 함수

// 문자 길이를 반환하며 한자는 2로 계산됩니다.
String.prototype. ChineseLength = function( ) {
return this .replace( / [ ^ x00 - xff] / g, " ** " ).length
}

// 양쪽 끝의 공백 문자를 제거합니다. 문자열
String.prototype.Trim = function() {
return this .replace( / ( ^ s ) | (s $) / g, "" )

// 문자의 왼쪽 끝을 제거합니다.
String.prototype.LeftTrim = function() {
return this .replace( / ( ^ [s] * ) / g, "" );
}

// 문자 오른쪽 끝의 공백 문자를 제거합니다.
String.prototype.RightTrim = function() {
return this .replace( / ([s] * $) / g, "" )
}

/* 문자열이 동일한지 확인하려면 대소문자 비교를 무시하세요
참고: 대소문자를 무시하지 않고 비교하려면 ==를 사용하세요.*/
String .prototype.IgnoreCaseEquals = function(str) {
이것을 반환합니다. toLowerCase() == str.toLowerCase();
}

/* 문자열이 같은지 확인하기 위해 대소문자 비교를 무시하지 마세요. */
String.prototype.Equals = function(str) {
return ( this == str)
}

/* 문자열을 비교하여 -1, 0을 반환합니다. 결과
동일 반환 값: 0 다름: -1
*/
String.prototype.CompareTo = function(str) {
if ( this == str) {
return 0 } else
return - 1 ;
}

// 문자열 교체
String.prototype.Replace = function(oldValue, newValue) {
var reg = new RegExp( oldValue, " g " );
return this .replace(reg, newValue);
}

// 특정 문자열로 끝나는지 확인
String.prototype.EndsWith = function (str) {
return this .substr( this .length - str .length) == str
}

// 문자열이 지정된 문자열
String으로 시작하는지 확인합니다. 프로토타입.StartsWith = function(str) {
return this .substr (0, str.length) == str;
}

// 왼쪽
문자열에서 n자를 잘라냅니다. 프로토타입.LeftSlice = function(n) {
return this .substr (0, n);
}

// 오른쪽에서 n자 자르기
String.prototype.RightSlice = function (n) {
return this .substring( this .length - n)
}

// 지정된 문자의 발생 횟수를 계산합니다.
String.prototype.Occurs = 함수 (ch) {
// var re = eval("/[^" ch "]/g")
// return this.replace(re, "").length
return this .split(ch).length - 1 ;
}


/* */를 사용하여 특정 스타일의 문자열을 구성합니다.
String.prototype.Style = function(style) {
return "
" , this , "
" ); }
// StringBuilder와 유사한 함수 구성(여러 문자열을 연결할 때 사용, 매우 편리함)
function StringBuilder(str) {
this .tempArr = new Array() ;
}
StringBuilder.prototype.Append = function(value) {
this .tempArr.push(value); >return this ;
}
StringBuilder.prototype.Clear = function() {
this .tempArr.length = 0
}
StringBuilder.prototype.toString = function() {
return this .tempArr.join( '' );
}

//일반적인 문자열 메서드 및 확장
function test() {
var testStr = " 테스트 문자열입니다. " ;
var testStr2 = " String" ;
// 경고(testStr.Trim());
// 경고(testStr.LeftTrim());
// 경고(testStr.RightTrim ());// 경고(testStr2. ChineseLength( ));
// 경고(testStr2.CompareTo(testStr))
// 경고(testStr2.StartsWith("string"));
// document.write(testStr2.Style(" color:red;width:100px"))
// 경고(testStr2.LeftSlice(2))// 경고(testStr.RightSlice) (7));// Alert(testStr.Occurs("s"));
/* StringBuilder 테스트*/
// var testStr3 = new StringBuilder(""); / testStr3.Append("test3rn");
/ / testStr3.Append("test3test3rn")
// testStr3.Append("test3")// Alert(testStr3.toString() );
// testStr3.Clear();// Alert(testStr3.toString())

2. * ------------- -----------다음 함수에는 여전히 일부 문자열 처리가 포함되어 있지만 정규식의 일부로 사용하는 것이 더 합리적으로 보입니다.-- ------------- ------------- */
// 문자열이 숫자로 구성되어 있는지 확인
String.prototype.IsDigit = function () {
var str = this .Trim ();
return (str.replace( / d / g, "" ).length == 0 )

/ / 문자열이 부동 소수점 유형인지 확인
String.prototype.IsFloat = function () {
var str = this .Trim()
// 비어 있으면 확인이 통과되지 않습니다.
if (str == "" )
return false
// 정수인 경우 정수의 유효성을 확인합니다.
if (str.indexOf( " . " ) == - 1 ) {
return str.IsDigit()
}
else {
if ( / ^(-?)(d )(.{1})(d )$ / g.test(str))
return true
else;
return false ;
}
}

// 음의 정수인지 확인
function isNegativeInteger(str) {
// 비어 있으면 확인 통과하지 않습니다
if (str == "" )
return false
if (str.IsDigit()) {
if (parseInt(str, 10 ) < 0 )
return true ;
else
return false ;
}
else
return false ;
}

// 음수 부동소수점인지 확인하세요
function isNegativeFloat(str) {
// 비어 있으면 확인이 통과되지 않습니다.
if (str == "" )
return false
if (str.IsFloat()) {
if (parseFloat (str, 10 )
true 반환 ;
else
false 반환
}
else
false 반환 ;

/ / 문자로 구성된 문자열인가요?
function isCharacter(str) {
return ( / ^[A-Za-z] $ / .test(str)); >}

// 문자와 숫자의 문자열인지
function isNumberCharacter(str) {
return ( / ^[A-Za-z0-9] $ / .test(str ));

// 이메일 여부
function isEmail(str) {
return ( / (S) [@]{1}(S) [.]{ 1}(w) / .test (str))
}

// url인가요 (댓글: 인터넷에 떠돌고 있는 버전은 기능이 매우 제한되어 있는데, 기본적으로는 다음 버전이 요구사항을 충족할 수 있습니다) )
function isUrl(str) {
return ( / ([a-zA-z] : / / )?[^s]* / .test(str))
}

// IP 주소인가요?
function isIpAddress( str) {
return / (d ).(d ).(d ).(d ) / .test(str)
}
// 2바이트 문자인지 여부(한자 포함)
function isUnicode(str) {
return ( / ^[x00-xff] $ / .test(str) );
}

// 전화번호인가요
function isTelephone(str) {
// 호환형식 : 국가번호(2~3자리)-지역번호(2~) 3자리)(-)?전화번호(7~8자리)-내선번호(3자리) )
return ( / ^(([0 ]d{2,3}-)?(0d{2,3 }))?[-]?(d{7,8})(-(d{3 ,}))?$ / .test(str))
}

// 휴대폰 번호?
function isMobilePhone(str) {
return ( / ^(((d {3}))|(d{3}-))?1[3,5]d{9} $ / .test(str))
}

// QQ 번호인가요? (Tencent QQ 번호는 10000부터 시작합니다.)
function isQQNumber(str) {
return ( / ^[1-9][0-9]{4,}$ / .test(str));
}

// 국내 우편번호인가요 (중국 우편번호는 6자리)
function isMailCode(str) {
return ( / d{6} / .test(str)) ;
}

// 국내 ID 번호인가요?
함수 isIdNumber(str) {
return ( / d{15}|d{18} / .test(str) ; 아주 간단한 일이므로 자세히 설명하지 않겠습니다.




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