>  기사  >  웹 프론트엔드  >  놓쳐서는 안 될 실용적인 JS 사용자 정의 함수 100가지_Javascript 기술

놓쳐서는 안 될 실용적인 JS 사용자 정의 함수 100가지_Javascript 기술

WBOY
WBOY원래의
2016-05-16 16:56:501139검색

1. 네이티브 JavaScript는 문자열 길이 차단을 구현합니다

코드 복사 코드는 다음과 같습니다.

function cutstr(str, len) {
var temp;
var icount = 0;
var patrn = /[^x00-xff]/;
var strre = "";
for (var i = 0; i if (icount temp = str.substr(i, 1);
if ( patrn.exec(temp) == null) {
               icount = icount 1
                                               strre = temp
       } else {
                                                                                                                 🎜> }
}
return strre "..."
}

2. 도메인 이름 호스트를 얻기 위한 기본 JavaScript



코드 복사
코드는 다음과 같습니다. 다음:function getHost(url) { var 호스트 = "null";
if(typeof url == "undefine" || null == url) {
url = window.location.href;
}
var regex = /^w ://([^/]*).*/;
var match = url.match(regex);
if(typeof match != "undefine" && null != match) {
호스트 = match[1];
}
return 호스트;
}

3. JavaScript 공백 공백



코드 복사
코드는 다음과 같습니다.String.prototype.trim = function() { var reExtraSpace = /^s*(.*?)s $/;
return this.replace(reExtraSpace, "$1")
}

4. 모두



기본 JavaScript 사용 .prototype.replaceAll = function(s1, s2) {
return this.replace(new RegExp(s1, "gm"), s2 )}5. 네이티브 JavaScript 이스케이프 html 태그
코드 복사


코드는 다음과 같습니다.


function HtmlEncode(text) {
텍스트를 반환합니다. replacement(/&/g, '&').replace(/"/g, '"').replace(/< /g, '<').replace(/>/g, '>' )}6. 기본 JavaScript는 html 태그를 복원합니다
코드 복사


코드는 다음과 같습니다.


function HtmlDecode(text) {
return text.replace(/&/g, ' &').replace(/"/g, '"').replace(//g, '>')} 7. 네이티브 JavaScript 시간 및 날짜 형식 변환
코드 복사


코드는 다음과 같습니다.

Date.prototype.Format = function(formatStr) {
    var str = formatStr;
    var Week = ['일', '일', '이', '삼', '사 ', '五', '六'];
    str = str.replace(/yyyy|YYYY/, this.getFullYear());
    str = str.replace(/yy|YY/, (this .getYear() % 100) > 9 ? (this.getYear() % 100).toString() : '0' (this.getYear() % 100));
    str = str.replace(/MM /, (this.getMonth() 1) > 9 ? (this.getMonth() 1).toString() : '0' (this.getMonth() 1));
    str = str.replace(/ M/g, (this.getMonth() 1));
    str = str.replace(/w|W/g, Week[this.getDay()]);
    str = str.replace(/ dd|DD/, this.getDate() > 9 ? this.getDate().toString() : '0' this.getDate());
    str = str.replace(/d|D/g, this.getDate());
    str = str.replace(/hh|HH/, this.getHours() > 9 ? this.getHours().toString() : '0' this.getHours()) ;
    str = str.replace(/h|H/g, this.getHours());
    str = str.replace(/mm/, this.getMinutes() > 9 ? this.getMinutes( ).toString() : '0' this.getMinutes());
    str = str.replace(/m/g, this.getMinutes());
    str = str.replace(/ss|SS /, this.getSeconds() > 9? this.getSeconds().toString() : '0' this.getSeconds());
    str = str.replace(/s|S/g, this.getSeconds());
    return str
}

8、原生JavaScript判断是否为数字类型
复主代码 代码如下:

function isDigit(value) {
    var patrn = /^[0-9]*$/;
    if (patrn.exec(value) == null || value == "") {
        false 반환
    } else {
        true 반환
    }
}

9、原生JavaScript设置cookie值
复主代码 代码如下:

function setCookie(name, value, Hours) {
    var d = new Date();
var offset = 8;
    var utc = d.getTime() (d.getTimezoneOffset() * 60000);
    var nd = utc (3600000 * offset);
    var exp = new Date(nd) ;
    exp.setTime(exp.getTime() 시간 * 60 * 60 * 1000);
    document.cookie = name "=" escape(value) ";path=/;expires=" exp.toGMTString( ) ";domain=360doc.com;"
}

10、原生JavaScript获取cookie值
复主代码 代码如下:

function getCookie(name) {
    var arr = document.cookie.match(new RegExp("(^| )" name "=([^;]*)(;|$)"));
    if (arr != null) return unescape(arr[2]);
    null 반환
}

11、原生JavaScript加入收藏夹
复代码 代码如下:

function AddFavorite(sURL, sTitle) {
    시도 {
        window.external.addFavorite(sURL, sTitle)
    } catch(e) {
        시도 {
            window.sidebar.addPanel(sTitle , sURL, "")
        } catch(e) {
            Alert("加入收藏失败,请使用Ctrl D进行添加")
        }
    }
}

12、原生JavaScript设为首页
复代码 代码如下:

function setHomepage() {
if (document.all) {
document.body.style.behavior = 'url(#default#homepage)';
document.body.setHomePage ('http://www.jq-school.com')
} else if (window.sidebar) {
                                                        >  경고 ("브라우저에서 이 작업을 거부합니다. 이 기능을 활성화하려면 주소 표시줄에 about:config를 입력한 후 항목에 서명하세요. applets.codebase_principal_support의 값은 true여야 합니다.")
                                         
prefs.setCharPref('browser.startup.homepage', 'http://www.jq-school.com')
}
}

13. 기본 JavaScript가 IE6을 결정합니다



코드 복사

document.execCommand("BackgroundImageCache", false, true)
} catch(e) {}
}

14. 네이티브 JavaScript 로딩 스타일 파일



코드 복사

code 다음과 같습니다:function LoadStyle(url) { try { document.createStyleSheet(url) } catch(e) {
var cssLink = document .createElement( 'link');
cssLink.rel = 'stylesheet';
cssLink.type = 'text/css';
cssLink.href = url;
var head = document.getElementsByTagName ('head')[0];
head.appendChild(cssLink)
}
}

15. 기본 JavaScript는 스크립트 콘텐츠를 반환합니다



코드 복사

코드는 다음과 같습니다.function evalscript(s) { if(s.indexOf(' var p = /]*?>([^x00]*?)/ig; var arr = [];
while(arr = p.exec(s)) {
var p1 = /]*?src="([^>]*?)"[^ >]*?( reload="1")?(?:charset="([w-] ?)")?>/i;
var arr1 = [];
arr1 = p1.exec (arr[0]);
if(arr1) {
appendscript(arr1[1], '', arr1[2], arr1[3]);
} else {
p1 = /([^x00] ?)/i;
arr1 = p1.exec(arr[0]);
appendscript('', arr1 [2], arr1[1].indexOf('reload=') != -1);
}
}
return s;
}

16. 네이티브 JavaScript 스크립트 내용 지우기



코드 복사

17. 네이티브 JavaScript는 스크립트 파일을 동적으로 로드합니다



코드 복사

코드는 다음과 같습니다.

function appendscript(src, text, reload, charset) {
  var id = hash(src text);
  if(!reload && in_array(id, evalscripts)) return;
if(reload && $(id)) {
    $(id).parentNode.removeChild($(id));
  }

  evalscripts.push(id);
  var scriptNode = document.createElement("script");
  scriptNode.type = "text/javascript";
  scriptNode.id = id;
scriptNode.charset = 문자셋 ? charset : (BROWSER.firefox ? document.characterSet : document.charset);
  try {
    if(src) {
      scriptNode.src = src;
      scriptNode. = false;
      scriptNode.onload = function () {
        scriptNode. = true;
        JSLOADED[src] = 1;
      };
      scriptNode.onreadystatechange = function () {
        if((scriptNode.readyState == 'loaded' || scriptNode.readyState == 'complete') && !scriptNode.{
          scriptNode. = true;
          JSLOADED[src] = 1;
       }
      };
    } else if(text){
      scriptN 송가 .text = text;
    }
    document.getElementsByTagName('head')[0].appendChild(scriptNode);
  } catch(e) {}
}


18 、원생JavaScript返回按ID检索的元素对象
复代码 代码如下:

function $ (id) {
  return !id ? null : document.getElementById(id);
}

19、原生JavaScript返回浏览器版本内容
复aze代码 代码如下:

function browserVersion(types) {
  var other = 1;
  for(i in types) {
    var v = 유형[i] ? 유형[i] : i;
    if(USERAGENT.indexOf(v) != -1) {
      var re = new RegExp(v '(\/ |\s)([\d\.] )', 'ig');
      var match = re.exec(USERAGENT);
      var ver = match != null match[2] : 0;
      기타 = ver !== 0 && v != 'mozilla' ? 0 : other;
    }else {
      var ver = 0;
    }
    eval('BROWSER.' i '= ver');
  }
  BROWSER.other = other ;
}

20、生显示의 통용 방법
复代码 代码如下:

function $(id) {
  return !id ? null : document.getElementById(id);
}
function display(id) {
  var obj = $(id);
  if(obj.style.visibility) {
    obj. style.visibility = obj.style.visibility == '표시' ? '숨김': '표시';
  } else {
    obj.style.display = obj.style.display == '' ? 'none' : '';
  }
}

21、原生JavaScript中有insertBefore수단법,可惜却没有insertAfter수단법?用如下函数实现
复代码 代码如下:

function insertAfter(newChild,refChild){
  var parElem=refChild.parentNode;
  if (parElem.lastChild==refChild){
    refChild.appendChild(newChild);
  }else{
    parElem.insertBefore(newChild,refChild.nextSibling);
  }
}

22、hara生JavaScript中兼容浏览器绑定元素事件
复代码 代码如下:

함수 addEventSamp(obj,evt,fn){
  if (obj.addEventListener) {
    obj.addEventListener(evt, fn, false);
  }else if(obj.attachEvent){
    obj.attachEvent('on' evt,fn);
  }
}

23. 기본 JavaScript 커서는 텍스트 뒤에서 멈추고 텍스트 상자에 포커스가 있을 때 호출됩니다. 🎜>
function focusLast(){ var e = event.srcElement; var r =e.createTextRange(); r.moveStart('character',e.value.length); r.collapse(true); r.select();}
24. 기본 JavaScript는 URL 링크가 유효한지 확인합니다




코드 복사

코드는 다음과 같습니다.

function getUrlState(URL){ var xmlhttp = new ActiveXObject("microsoft.xmlhttp") ; xmlhttp.Open("GET",URL, false); try{ xmlhttp.Send(); }catch(e){ }finally{
var result = xmlhttp.responseText;
if(result){
if(xmlhttp.Status ==200){
return(true);
}else{
return(false);
}
}else{
return(false);
}
}
}

25. 기본 JavaScript 서식 CSS 스타일 코드




코드 복사

코드는 다음과 같습니다. 다음과 같습니다:

함수 formatCss(s){//형식 지정 코드 s = s.replace(/s*([{}:,])s*/g, "$1 "); s = s.replace(/;s*;/g, ";"); //연속된 세미콜론 지우기 s = s.replace(/,[s.#d]*{/ g, "{"); s = s.replace(/([^s]){([^s ])/g, "$1 {nt$2"); s = s.replace( /([^s])}([^n]*)/g, "$1n}n$2"); s = s.replace(/([^s]);([^s}] )/g, "$1;nt$2");
return s;
}

26. 기본 JavaScript 압축 CSS 스타일 코드




코드 복사

코드는 다음과 같습니다.

function yasuoCss(s ) {//압축 코드 s = s.replace(//*( .|n)*?*//g, ""); //댓글 삭제 s = s.replace(/s* ([{}:;,])s*/g, "$1"); s = s.replace(/,[s.#d]*{/g, "{"); //내결함성 처리 s = s.replace(/;s*;/g, " ;"); //연속된 세미콜론 지우기 s = s.match(/^s*(S (s S )*)s *$/); //앞뒤 공백 제거 return (s == null) ? "" : s[1];
}

27. 기본 JavaScript로 현재 경로 가져오기




코드 복사

코드는 다음과 같습니다:

var currentPageUrl = "";if (typeof this.href = == "undefine") { currentPageUrl = document.location.toString().toLowerCase();}else { currentPageUrl = this.href.toString().toLowerCase() }
28 . 네이티브 JavaScript IP를 정수로 변환



코드 복사


코드는 다음과 같습니다.


function _ip2int (ip){

코드 복사


코드는 다음과 같습니다.


function _int2iP(num){
var str;
var tt = new Array();
tt[0] = (num >>> 24) > ;>> 0;
tt[1] = ((숫자 >>> 24) >>>> 0; tt[2] = (숫자 tt[3] = (num << 24) >> 24; str = String(tt[0]) "." tt[1]) "." 문자열(tt[2]) "." 문자열(tt[3]); return str;}
30. 네이티브 JavaScript는 체크박스 선택 및 모두 선택 해제를 구현합니다.
코드 복사 코드는 다음과 같습니다.

function checkAll() {
var selectall = document.getElementById("selectall");
var allbox = document.getElementsByName("allbox");
if (selectall.checked) {
for (var i = 0; i < allbox.length; i ) {
allbox[i].checked = true;
}
} else {
for (var i = 0 ; i < allbox.length; i ) {
allbox[i].checked = false;
}
}

참고: 모바일 장(31~40)

31. 기본 JavaScript는 기기가 모바일인지 여부를 결정합니다

코드 복사 코드는 다음과 같습니다:
function isMobile(){
if (typeof this._isMobile === 'boolean'){
return this._isMobile;
}
var screenWidth = this.getScreenWidth();
var fixViewPortsExperiment = rendererModel.runningExperiments.FixViewport || rendererModel.runningExperiments.fixviewport;
var fixViewPortsExperimentRunning = fixViewPortsExperiment && (fixViewPortsExperiment.toLowerCase() === "new") ;
If (!FixViewPortsexperiment) {
if (!This.ISAppleMobileDevice ()) {
Screenwidth = Screenwidth/Window.devicePixelratio; > Var ismobileScreensize = Screenwidth & LT 600; false;
this._isMobile = isMobileScreenSize && this.isTouchScreen();
return this._isMobile;
}

32 기본 JavaScript는 모바일 장치 액세스 여부를 결정합니다



코드 복사
코드는 다음과 같습니다.function isMobileUserAgent(){ return (/iphone |ipod| android.*mobile|windows.*phone|blackberry.*mobile/i.test(window.navigator.userAgent.toLowerCase()));}
33 기본 JavaScript가 Apple 모바일 장치인지 여부를 결정합니다. access



코드 복사
코드는 다음과 같습니다.function isAppleMobileDevice(){ return (/iphone|ipod|ipad|Macintosh/i.test(navigator.userAgent.toLowerCase()));}
34 기본 JavaScript는 Android 모바일 장치 액세스 여부를 결정합니다



코드 복사
코드는 다음과 같습니다.function isAndroidMobileDevice(){ return (/android/i .test( navigator.userAgent.toLowerCase()));}
35. 기본 JavaScript는 화면 터치 여부를 결정합니다.



코드 복사
코드는 다음과 같습니다.function isTouchScreen(){ return (('ontouchstart' in window) || window.DocumentTouch && document instanceof DocumentTouch );}
36. Android에서 Google Chrome이 실행 중인지 확인하는 기본 JavaScript



코드 복사
코드는 다음과 같습니다.function isNewChromeOnAndroid(){ if(this.isAndroidMobileDevice()){ var userAgent = navigator.userAgent.toLowerCase();
if((/chrome/i.test(userAgent ))){
var parts = userAgent.split('chrome/');

var fullVersionString = parts[1].split(" ")[0];
var versionString = fullVersionString.split('.')[0];
var version =parseInt(versionString);

if(version >= 27){

return true;
}
}

}

return false;
}

37. 네이티브 JavaScript 창 열기 여부 결정



코드 복사
코드는 다음과 같습니다

function isViewportOpen() {
return !!document.getElementById('wixMobileViewport');
}

38. 네이티브 JavaScript는 모바일 장치 초기화 크기를 가져옵니다
코드 복사 코드는 다음과 같습니다.

function getInitZoom(){
if(!this. _initZoom){
var screenWidth = Math.min(screen.height, screen.width);
if(this.isAndroidMobileDevice() && !this.isNewChromeOnAndroid()){
screenWidth = screenWidth/window. devicePixelRatio;
}
this._initZoom = screenWidth /document.body.offsetWidth;
}
return this._initZoom;
}

39. 모바일 장치의 최대 크기
코드 복사 코드는 다음과 같습니다.

function getZoom() {
var screenWidth = (Math .abs(window.orientation) === 90) ? Math.max(screen.height, screen.width) : Math.min(screen.height, screen.width);
if(this.isAndroidMobileDevice() && !this.isNewChromeOnAndroid()){
screenWidth = screenWidth/window.devicePixelRatio;
}
var FixViewPortsExperiment = rendererModel.runningExperiments.FixViewport || rendererModel.runningExperiments.fixviewport ;
var FixViewPortsExperimentRunning = FixViewPort sExperiment && (FixViewPortsExperiment === "New" || FixViewPortsExperiment === "new");
if(FixViewPortsExperimentRunning){
return screenWidth / window.innerWidth;
}else{
return screenWidth / document .body.offsetWidth;
}
}

40. 모바일 기기 화면 너비를 가져오는 기본 JavaScript
코드 복사 코드는 다음과 같습니다.

function getScreenWidth(){
var SmallSide = Math.min(screen.width, screen.height);
var fixViewPortsExperiment = rendererModel.runningExperiments.FixViewport || rendererModel.runningExperiments.fixviewport;
var fixViewPortsExperimentRunning = fixViewPortsExperiment && (fixViewPortsExperiment.toLowerCase() === "new");
if (fixViewPortsExperiment){
if(this.isAndroidMobileDevice() && !this.isNewChromeOnAndroid()){
SmallSide = 더 작은Side/window.devicePixelRatio;
}
}
return SmallSide;
}

41. Native JavaScript는 URL
에 대한 코드 복사 여부를 완벽하게 판별합니다. :

function IsURL(strUrl) {
var Regular = /^b(((https?|ftp)://)?[-a-z0-9] (.[- a-z0-9] )*.(?:com|edu|gov|int| mil|net|org|biz|info|name|museum|asia|coop|aero|[a-z][a-z]|((25 [0-5])|(2[0-4]d)|(1dd) |([1-9]d)|d))b(/[-a-z0-9_:@&?= ,. !/~%$]*)?)$/i
if (regular.test(strUrl)) {
           return true; Object




코드 복사


코드는 다음과 같습니다.

function getElementsByClassName(name) {
var tagged = document.getElementsByTagName('*') || document.all;
var els = [];
for (var i = 0 ; i if (tags[i].className) {
var cs = Tags[i].className.split(' ');
for (var j = 0; j                                                    >                                                       🎜>코드 복사


코드는 다음과 같습니다.


문자열. 프로토타입.startWith = 함수(s) {
return this.indexOf(s) == 0
}

44. 기본 JavaScript는 특정 문자열
으로 끝나는지 여부를 결정합니다. 코드 복사 코드는 다음과 같습니다.

String.prototype.endWith = function(s) {
var d = this.length - s.length;
return (d >= 0 && this.lastIndexOf(s ) == d)
}

45 기본 JavaScript는 버전 번호를 반환합니다. IE 브라우저 코드는 다음과 같습니다.


function getIE(){
if (window.ActiveXObject){
var v = navigator.userAgent.match(/MSIE ([^;] )/ )[1];
returnparseFloat(v.substring(0, v.indexOf( ".")))
}
false 반환코드 복사


코드는 다음과 같습니다.


function getPageHeight(){
var g = document, a = g.body, f = g.documentElement, d = g.compatMode == "BackCompat"
? a
: g.documentElement;
return Math.max(f.scrollHeight , a.scrollHeight, d.clientHeight);
}
47. 기본 JavaScript는 페이지 scrollLeft코드 복사

코드는 다음과 같습니다.


function getPageScrollLeft(){
var a = document;
return a.documentElement.scrollLeft || a.body.scrollLeft;
}

48. 기본 JavaScript로 표시되는 너비를 가져옵니다. 페이지 코드는 다음과 같습니다.


function getPageViewWidth(){
var d = document, a = d.compatMode == "BackCompat"
? d.body
: d.documentElement;
return a.clientWidth;
}
49. 페이지 너비를 가져오는 기본 JavaScript코드 복사
코드는 다음과 같습니다.


function getPageWidth(){
var g = document, a = g.body, f = g.documentElement, d = g.compatMode == "BackCompat"
? a
: g.documentElement ;
return Math.max(f.scrollWidth, a.scrollWidth, d.clientWidth);
}
50. 기본 JavaScript는 페이지 scrollTop을 가져옵니다코드 복사
코드는 다음과 같습니다.

function getPageScrollTop(){
var a = document;
return a.documentElement.scrollTop || a.body.scrollTop;
}

61. offsetX 호환성 문제 해결
코드 복사 코드는 다음과 같습니다.

// Firefox offsetX /Y를 지원하지 않습니다.
function getOffset(e){
var target = e.target, // 현재 트리거된 대상 객체
eventCoord,
pageCoord,
offsetCoord;

// 현재 트리거 요소에서 문서까지의 거리를 계산합니다.
pageCoord = getPageCoord(target);

// 커서에서 문서까지의 거리를 계산합니다.
eventCoord = {

// 첫 번째 위치의 상위 요소에 대한 커서 좌표를 얻기 위해 빼기
offsetCoord = {

X : eventCoord.X - pageCoord.X,

Y : eventCoord.Y - pageCoord.Y
};
return offsetCoord;
}

function getPageCoord(element){
var coord = { offsetLeft 또는 offsetTop 값의 합

while (element){

coord.X = element.offsetLeft;
coord.Y = element .offsetTop;
element = element.offsetParent;
}
return coord;
}

62. 기본 JavaScript에서 일반적으로 사용되는 정규식



코드 복사
코드는 다음과 같습니다. //양의 정수/^[0-9]*[1- 9][0-9]*$/;//음의 정수
/^-[0-9]*[1-9][0-9]*$/;
//양수 부동 소수점 숫자
/^(([0-9] .[0-9] *[1-9][0-9]*)|([0-9]*[1-9][0- 9]*.[0-9] )|([0-9]*[1- 9][0-9]*))$/;
//음수 부동 소수점 숫자
/^(- (([0-9] .[0-9]*[1-9][0- 9]*)|([0-9]*[1-9][0-9]*.[0-9 ] )|([0-9]*[1-9][0-9]*) ))$/;
//부동 소수점 수
/^(-?d )(.d )? $/;
//이메일 주소
/^[w-] (.[w -] )*@[w-] (.[w-] ) $/;
//url 주소
/^[a-zA-z] ://(w (-w )*)( .(w (-w )*))*(?S*)?$/;
//연도/ 월/일(년-월-일, 년.월.일)
/^(19 |20)dd[- /.](0[1-9]|1[012])[- /.] (0[1-9]|[12][0-9]|3[01])$ /;
//한자 일치
/[u4e00-u9fa5]/;
//여부 일치하는 계정이 유효합니다(문자로 시작, 5-10바이트 허용, 영숫자 밑줄 허용)
/ ^[a-zA-Z][a-zA-Z0-9_]{4,9}$/;
//빈 줄과 일치하는 정규식
/ns*r/;
/ /중국 우편번호 일치
/[1-9]d{5}(?!d)/;
//신분증 일치
/d{15}|d{18}/;
//국내 전화번호 일치
/(d{3}-|d{4}-)?(d {8}|d{7})?/;
//IP 주소 일치
/((2[0-4]d|25[0-5]|[01]?dd?).) {3}(2[0-4]d|25[0-5]|[01]? dd?)/;
//선행 및 후행 공백 문자와 일치하는 정규 표현식
/^s*|s *$/;
//HTML 태그와 일치하는 정규 표현식
< (S *?)[^>]*>.*?|< .*;; >63. Native JavaScript는 상위로 돌아가는 일반적인 방법을 구현합니다

코드 복사


코드는 다음과 같습니다.


function backTop(btnId) {
var btn = document.getElementById(btnId); var d = document.documentElement; var b = document.body; window.onscroll = 설정; btn.style.display = "none"; btn.onclick = function() { btn.style.display = "none";
window.onscroll = null;
this.timer = setInterval(function() {
d.scrollTop -= Math.ceil((d.scrollTop b.scrollTop) * 0.1);
b.scrollTop -= Math.ceil((d .scrollTop b.scrollTop) * 0.1);
if ((d.scrollTop b.scrollTop) == 0)clearInterval(btn.timer, window.onscroll = set);
},
10) ;
};
function set() {
btn.style.display = (d.scrollTop b.scrollTop > 100) ? 'block': "none"
}
} ;
backTop('goTop');

64. 기본 JavaScript는 URL




코드 복사

코드는 다음과 같습니다.

// 사용법: 주소가 test.htm?t1=1&t2=2&t3=3이면 다음을 얻을 수 있습니다: GET["t1"], GET["t2"], GET["t3" ]
function get_get(){
querystr = window.location.href.split("?")
if(querystr[1]){
GETs = querystr[1].split(" &" )
GET =new Array()
for(i=0;i tmp_arr = GETs[i].split("=")
키 =tmp_arr [0]
GET[key] = tmp_arr[1]
}
}
return querystr[1];
}

65 기본 JavaScript는 범용을 구현합니다. 모든 메소드 선택
코드 복사 코드는 다음과 같습니다.

function checkall(form, 접두사, checkall) {
var checkall = checkall ? checkall : 'chkall';
for(var i = 0; i < form.elements.length; i ) {
var e = form.elements [i];
if(e.type=="checkbox"){
e.checked = form.elements[checkall].checked;
}
}
}

66. 네이티브 JavaScript는 모두 선택을 취소하는 일반적인 방법을 구현합니다.
코드 복사 코드는 다음과 같습니다.

function uncheckAll(form) {
for (var i=0;i var e = form.elements[i];
if ( e.name != 'chkall')
e.checked=!e.checked;
}
}

67. 기본 JavaScript는 양식을 여는 일반적인 방법을 구현합니다
코드 복사 코드는 다음과 같습니다.

function openWindow(url,windowName,width,height){ <… .appName == "Microsoft Internet Explorer");
if (isMSIE) {
var p = "resizing=1,location=no,scrollbars=no,width=";
p = p 너비;
p = p ",height=";
p = p 높이;
p = p ",left=";
p = p x;
p = p ",top=" ;
p = p y;
retval = window .open(url, windowName, p);
} else {
var win = window.open(url, "ZyiisPopup", "top=" y ",left=" x ",scrollbars=" 스크롤바 " ,dialog=yes,modal=yes,width=" width ",height=" height ",ressible=no" );
    eval("try { win .resizeTo(width, height); } catch(e) { }");
win.focus();
}
}

68. 기본 JavaScript는 클라이언트 장치


코드 복사 코드는 다음과 같습니다.함수 클라이언트(o){
var b = navigator.userAgent.toLowerCase();
var t = false;
if (o == 'isOP'){
t = b.indexOf('opera') > 1;
}
if (o == 'isIE') {
t = b.indexOf('msie') > -1;
}
if (o == ' isFF'){
t = b.indexOf('firefox') > ; -1;
}
return t;
}

69의 값을 얻습니다. 라디오 버튼


코드 복사 코드는 다음과 같습니다.function get_radio_value(field){
if(field&&field.length){
for(var i=0;i< field.length;i ){
if(field[i].checked){
return field[i] .value;
}
}
}else {
return
}
}

70. 네이티브 JavaScript로 체크박스 값 가져오기
코드 복사 코드는 다음과 같습니다.

function get_checkbox_value(필드){
if(field&&field.length){
for(var i=0;i if(필드[i] .checked && !field [i].disabled){
            return field[i].value; >(71~80) 확인 이 글은 이메일, 위험 문자, 확인 길이 등 일반적으로 사용되는 양식 확인 기능 10가지에 대한 내용을 주로 다루고 있습니다. , 확인 URL, 소수점, 정수, 부동 소수점 숫자 확인 및 기타 일반적으로 사용되는 확인 이러한 코드 조각을 사용하면 일반 형식 확인에 jquery 확인 플러그인이 필요하지 않으므로 모든 사람에게 도움이 될 수 있기를 바랍니다. . .
71. 네이티브 자바스크립트가 이메일 주소인지 판단




코드 복사


코드는 다음과 같습니다.
}
}

72. 기본 JavaScript는 목록에 위험한 문자가 있는지 확인합니다




복사 code

코드는 다음과 같습니다.
}
}

73. 기본 JavaScript는 문자열이 지정된 길이보다 큰지 확인합니다




코드 복사

코드는 다음과 같습니다.
74. 기본 JavaScript는 문자열이 URL에서 대소문자를 구분하지 않는지 확인합니다




코드 복사

코드는 다음과 같습니다.
else
return true;
}
return false;
}

75. 기본 JavaScript 문자열이 소수인지 확인




코드 복사

코드는 다음과 같습니다.
function isValidDecimal( chars ) { var re=/^d*.?d{1,2}$/; if ( chars.match(re) == null) return false; else return true;
}

76 기본 JavaScript는 문자열이 정수인지 확인합니다




코드 복사

코드는 다음과 같습니다.
function isNumber( chars ) { var re= /^d*$/; if (chars.match(re) == null) return false; else return true;
}

77. 기본 JavaScript는 문자열이 부동 소수점 숫자인지 확인




코드 복사

코드는 다음과 같습니다.

function isFloat( str ) {
for(i=0;i if ((str.charAt(i)<"0" || str .charAt(i)>"9")&& str.charAt(i) != '.'){
return false;
}
}
return true;
}

78. 네이티브 자바스크립트는 문자가 A-Za-z 영문자인지 판단합니다
코드 복사 다음과 같습니다:

function isLetters( str ){
var re=/^[A-Za-z] $/;
if (str.match(re) == null )
return false;
else
return true;
}

79. 기본 JavaScript는 문자열이 우편번호인지 확인합니다
코드 복사 코드는 다음과 같습니다.

function isValidPost( chars ) {
var re=/^d{6}$/ ;
if (chars.match (re) == null)
return false;
else
return true;
}

80 기본 JavaScript는 문자 여부를 결정합니다. 비어 있음 NULL
코드 복사 코드는 다음과 같습니다.

function isNULL( chars ) {
if (chars == null)
true 반환;
if (jsTrim(chars).length==0)
true 반환;
false 반환;
}

81. 기본 JavaScript는 정규 표현식을 사용하여 페이지 코드를 추출합니다.
코드 복사 코드는 다음과 같습니다. 🎜>
var aa = document.documentElement.outerHTML.match(/(url(|src=|href=)["']*([^"'()<>[] ] ) ["')]*|(http://[w-.] [^"'()<>[] ] )/ig).join("rn").replace(/^(src=| href=|url()["']*|["'> ) ]*$/igm,"");
alert(aa);
82. 기본 JavaScript는 다음을 수행합니다. 동일한 배열 지우기(낮은 효율)

코드 복사 코드는 다음과 같습니다.
Array .prototype.unique=function(){
return this.reverse().join (",").match(/([^,] )(?!.*1)/ig).reverse();
}
83. 기본 JavaScript는 정규 표현식을 사용하여 동일한 배열(고효율)을 지웁니다.

코드 복사 코드는 다음과 같습니다.
String.prototype.unique= function(){
var x=this.split(/[rn] /);
var y ='';
for(var i=0;i if(!new RegExp("^" x[i].replace(/([^w])/ ig,"\$1") "$","igm").test(y)){
y =x[i] "rn"
}
}
return y
}
84. 기본 JavaScript는 정규 표현식을 사용하여 각 줄을 알파벳순으로 정렬하고 배열합니다. 정렬

function SetSort(){
var text= K1.value.split(/[rn]/).sort().join("rn");// 순서
var test=K1.value.split(/[rn]/).sort().reverse().join("rn");//역순
K1.value=K1.value! =text?text:test;
}
85. 기본 JavaScript 문자열 시퀀스 역순

코드 복사 코드는 다음과 같습니다:
function IsReverse(text){
return text .split('').reverse().join('');
}
86. 기본 JavaScript는 정규식을 사용하여 html 코드에서 스크립트를 지웁니다

코드 복사 코드는 다음과 같습니다.
functionclear_script(){
K1.value=K1.value.replace(/[sS]*?|s on[a- zA-Z]{3,16}s?=s?"[sS]*?"|s on[a-zA -Z]{3,16}s?=s?'[sS]*?'|s on[a-zA-Z]{3,16}s?=[^ >] /ig,"")
}

87. 네이티브 JavaScript는 JavaScript 스크립트를 동적으로 실행합니다.
코드 복사 코드는 다음과 같습니다.

function javascript(){
try{
eval(K1.value);
}catch(e){
Alert(e.message);
}
}

88. 기본 JavaScript는 VBScript 스크립트를 동적으로 실행합니다
코드 복사 코드는 다음과 같습니다.

function vbscript (){
try{
var script=document.getElementById("K1").value;
if(script.trim()=="")return;
window.execScript(' On Error Resume Next n' script 'n If Err.Number<>0 Then n MsgBox "올바른 VBScript 스크립트를 입력하십시오!",48,"스크립트 오류!" n End If',"vbscript ")
} catch(e){
Alert(e.message);
}
}

89. 네이티브 JavaScript는 금액 대소문자 변환 기능을 구현합니다
코드 복사 코드는 다음과 같습니다.

function 변환(tranvalue) {
try {
var i = 1;
var dw2 = new Array("", "10,000", "1억") //대형 단위
var dw1 = new Array("十", "百", "千"); //소형 단위
var dw = new Array("zero", "一", "two", "三" , "4", "五", "鲁", "旒", "八", "九"); //정수 부분은
사용 //다음은 소문자에서 대문자로 변환되어 표시됩니다. 총 대문자 텍스트 상자
//정수와 소수 분리
var source = Splits(tranvalue);
var num = source[0];
var dig = source[1];
//정수 부분 변환
var k1 = 0; //소단위
var k2 = 0; //대단위
var sum = 0;
var str = "";
var len = source [0].length; //정수의 길이
for (i = 1; i var n = source[0].charAt(len - i); //특정 숫자의 숫자 가져오기
var bn = 0;
if (len - i - 1 >= 0) {
bn = source[0].charAt(len - i - 1); //특정 숫자 이전의 숫자 가져오기
}
sum = sum Number(n);
if (sum != 0) {
str = dw[Number(n) ) ].concat(str); //숫자에 해당하는 대문자 숫자를 구해 문자열 문자열 앞에 삽입
                                                                                                                                                     ]. len - i - 1 >= 0) { //다음 범위 내에서 숫자
if (k1 != 3) { //더 작은 단위 추가
if (bn != 0) {
str = dw1 [k1].concat(str);
}
k1 ;
} else { //작은 단위를 추가하지 말고 단위를 늘리세요
k1 = 0;
var temp = str.charAt (0) If (TEMP == "Wan" | | Temp == "billion") // 큰 단위 앞에 숫자가 없으면 큰 단위로 이동
STR = Str.Substr (1, Str.length - 1);
str = dw2[k2].concat(str);
sum = 0;
}
}
if (k1 == 3) //1000까지의 작은 단위가 다음 주요 단위
{
k2 ;
}
}
//소수점 변환
var strdig = "";
if (dig != "" ) {
var n = dig.charAt(0);
if (n != 0) {
strdig = dw[Number(n)] "angle"; //숫자 추가
}
var n = dig. charAt(1);
if (n != 0) {
strdig = dw[Number(n)] "points"; //숫자 추가
}
}
str = " yuan" strdig;
} catch(e) {
return "0 yuan";
}
return str;
}
//분해 정수 및 소수 분할
함수 Splits(tranvalue) {
var value = new Array('', '');
temp = tranvalue.split(".");
for (var i = 0; i < temp. length; i ) {
value[i] = temp[i];
}
return value;
}

90. 일반적으로 사용되는 정규 표현식의 대규모 모음


코드 복사 코드는 다음과 같습니다.

한자 일치 정규식: [u4e00-u9fa5]
2바이트 문자 일치(한자 포함): [^x00-xff]
빈 줄 일치 정규식: [s| ]*r
HTML 태그와 일치하는 정규식: <(.*)>.*|<(.*) />
선행 및 후행 공백과 일치하는 정규식 표현식: (^s*)|(s*$)
IP 주소와 일치하는 정규식:/(d).(d).(d).(d)/g
이메일 주소와 일치하는 정규식: w ([- .]w )*@w ([-.]w )*.w ([-.]w )*
정규식 일치 URL: http://(/ [w-] .) [w -] (/[w- ./?%&=]*)?
sql 문: ^(select|drop|delete|create|update|insert).*$
음이 아닌 정수: ^d $
양의 정수: ^[0-9]*[1-9][0-9]*$
양이 아닌 정수: ^((-d )|(0 ) )$
음 정수: ^-[0-9]*[1-9][0-9]*$
정수: ^-?d $
음수가 아닌 부동 소수점 수: ^d (. d )?$
양수 부동 소수점 수: ^((0-9) .[0-9]*[1-9][0-9]*)|([0-9]*[1-9] [0- 9]*.[0-9] )|([0-9]*[1-9][0-9]*))$
양수가 아닌 부동 소수점 수: ^((-d .d ) ?)|(0 (.0 )?))$
영어 문자열: ^[A-Za-z] $
영어 대문자 문자열: ^[A-Z] $
영어 소문자 문자열: ^ [a-z ] $
영문 및 숫자 문자열: ^[A-Za-z0-9] $
밑줄 포함 영어 및 숫자 문자열: ^w $
이메일 주소: ^[w-] (. [w-] )*@[w-] (.[w-] ) $
URL: ^[a-zA-Z] ://(w (-w )*)(.(w (-w )*))*(?s*)?$ 또는: ^http://[A-Za-z0-9] .[A-Za-z0-9] [/=?%-&_~`@[] ': !]*([^<>""])*$
우편번호: ^[1-9]d{5}$
전화번호: ^(((d{2,3 }))|(d{3}-))?((0d{2,3})|0d{2,3}-)?[1-9]d{6,7}(-d{1,4 })?$
휴대폰번호: ^(((d{2,3}))|(d{3}-))?13d{9}$
2바이트 문자(한자 포함) :^x00-xff
선행 및 후행 공백과 일치: (^s*)|(s*$)
HTML 태그와 일치: <(.*)>.*|< (. *) />
는 빈 줄과 일치합니다. [s| ]*r
정보에서 네트워크 링크 추출: (h|H)(r|R)(e|E)(f|F) *= *('|")?(w|\| /|.) ('|"| *|>)?
메시지에서 이메일 주소를 추출합니다: w ([- .]w )*@w ([-.]w )*.w ([- . ]w )*
메시지에서 그림 링크를 추출합니다: (s|S)(r|R)(c|C) *= *('|")?(w|\|/|.) ( '| "| *|>)?
정보에서 IP 주소 추출: (d).(d).(d).(d)
정보에서 중국 휴대폰 번호 추출: ( 86)*0* 13d{9}
정보에서 중국 유선 전화번호를 추출합니다: ((d{3,4})|d{3,4}-|s)?d{8}
정보 번호(휴대폰 및 유선 포함)에서 중국 전화번호 추출: ((d{3,4})|d{3,4}-|s)?d{7,14}
중국 우편물 추출 정보의 코드: [1- 9]{1}(d ){5}
정보의 부동 소수점 숫자(예: 소수) 추출: (-?d*).?d
다음의 숫자 추출 정보: (-?d*) (.d )?
IP: (d ).(d ).(d ).(d )
전화 지역 번호: ^0d{2,3}$
Tencent QQ 번호: ^[1- 9]*[1-9][0-9]*$
계좌 번호(문자로 시작, 5-16바이트 허용, 영숫자 밑줄 허용): ^[a -zA-Z][a-zA-Z0 -9_]{4,15}$

중국어, 영어, 숫자 및 밑줄: ^[u4e00-u9fa5_a-zA-Z0-9] $
91. Native JavaScript로 폼 변경 이벤트 크기 조정 작업 구현 (모든 브라우저와 호환)
코드 복사 코드는 다음과 같습니다.

(function() {
var fn = function(){
var w = document.documentElement ? document.documentElement.clientWidth : document.body.clientWidth
, r = 1255
,b = Element.extend(document .body)
,classname = b.className
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.