>웹 프론트엔드 >JS 튜토리얼 >JavaScript_javascript 팁을 위한 아름다운 코드 조각

JavaScript_javascript 팁을 위한 아름다운 코드 조각

WBOY
WBOY원래의
2016-05-16 17:32:441023검색

정규식을 동적으로 구성

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

new RegExp( Expr.match[ type ] .source ( /(?![^[]*])(?![^(]*))/.source) )

sizzle에서 정규식을 동적으로 작성할 때 문자를 피합니다. 탈출.


더 유연하고 스마트해진 숫자 제로 패딩

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

function prefixInteger(num, length) {
return (num / Math.pow(10, length)).toFixed(length).substr(2);
}

배열의 최대값과 최소값 가져오기

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

Math.max.apply(Math, [ 1,2 ,3]) //3
Math.min.apply(Math, [1,2,3]) //1

아름다운 무작위 문자열 생성

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

Math.random().toString(16 ).substring (2); //8비트
Math.random().toString(36).substring(2); //16비트


타임스탬프 가져오기


var timeStamp = (new Date).getTime();
다음 방법이 더 편리합니다.

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

var timeStamp = Number(new Date);

숫자값으로 변환하고 반올림

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

var result = '3.1415926' | // 3


문자열 서식

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

함수 형식(format) {
if (!FB.String.format._formatRE) {
FB.String.format._formatRE = /({[^}^{] })/g;
}

var 값 ​​= 인수;

return format.replace(
FB.String.format._formatRE,
function(str, m) {
var
index =parseInt(m.substr(1), 10),
           값 = 값[색인 1] ;
}
);
}


용도:


코드 복사
코드는 다음과 같습니다: format('{0}.facebook.com/{1}', 'www', 'login. php'); //-> www.facebook.com/login.php

두 변수의 값을 교환합니다

코드 복사

코드는 다음과 같습니다.var foo = 1;var bar = 2 ;foo = [bar, bar=foo][0];


정규식 반복

코드 복사

코드는 다음과 같습니다.String.prototype.format = 함수( / * args * / ) { var args = 인수; return this.replace(
/{(d )}/g,
function (full, idx) {
return args[ idx];
} )
}

'안녕하세요 {0}, How{1}'.format( 'Bob', 'you doin');
// => 안녕하세요 Bob, 잘 지내세요http://mazesoul.github.com/ 가독성_idioms_and_compression_tolerance/#31.0

기능 정의 및 실행

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

( function() {
/ / 뭔가를 하세요
} )()

이것은 실제로 가장 간단한 기술이지만 가장 실용적이기도 합니다. JavaScript 캡슐화의 기반을 마련합니다.

3차 연산

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

var some = con1 ? > con2 ? val2 :
con3 ? val3 :
defaultVal;

함수 등록 호출 메커니즘

CKEditor에서 추출을 했습니다.

코드 복사 코드는 다음과 같습니다.
( function() {
var fns = [ ];
// 첨자로 속성에 액세스할 수 있는 객체를 배열로 변환
// IE
function toArray( arrayLike, index ) {
return Array에서는 DOMNodeList가 실패합니다. 프로토타입.slice .call( arrayLike, index || 0 );
}
window.Util = {
'addFunction' : function( fn,scope ) {
return fns.push( function( ){
return fn.apply( 범위 || 창, 인수 );
} ) - 1;
},
'removeFunction' : 함수( index ) {

fns[ index ] = null;
},

'callFunction' : function( index ) {

var fn = fns[ index ];

return fn && fn.apply( window, toArray( 인수, 1 ) );
}
};
} )();
// 애플리케이션 시나리오
var fnId;
// 클로저에 전역적으로 호출할 수 있는 함수를 추가합니다
( function( ) {
fnId = Util.addFunction( function( msg ) {
Alert( msg );
} );
} )();

//

Util.callFunction( fnId, 'Hello, World' ) //-> 'Hello,World';

단락운전

코드 복사 코드는 다음과 같습니다.
var Something = 'xxxx';
console.log( true && Something ); //-> 'xxx';
console.log( false && Something ); //-> false
console.log( true || Something ); // - > true
console.log( false || Something ) //->
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.