우리 모두 알다시피, JavaScript는 매우 인기있는 프로그래밍 언어입니다. 개발자는이를 사용하여 눈부신 웹 프로그램을 개발할뿐만 아니라 일부 모바일 응용 프로그램 (예 : PhoneGap 또는 Appcelerator)을 개발할 수 있습니다. 또한 Nodejs, Wakanda 및 기타 구현과 같은 일부 서버 구현이 있습니다. 또한 많은 개발자들은 소개 언어로 JavaScript를 선택하여 팝업과 같은 작은 것을 만드는 데 사용합니다.
이 기사에서 저자는 작은 팁, 모범 사례 및 기타 실용적인 JavaScript 개발 내용을 공유 할 것입니다. 프론트 엔드 개발자이든 서버 개발자이든,이 작은 팁을 살펴 봐야합니다.
이 기사에 제공된 코드 스 니펫은 V8 JavaScript 엔진 (V8 3.20.17.15)을 사용하는 최신 버전의 Chrome 30에서 테스트되었습니다.
1. 처음으로 변수에 값을 할당 할 때 VAR 키워드를 잊지 마십시오.
노출되지 않은 변수에 값을 할당하며,이 변수는 자동으로 글로벌 변수로 생성됩니다. JS 개발에서는 글로벌 변수를 피해야합니다.
2. 사용 === 교체 ==
그리고 절대 사용 = 또는! =.
코드 사본은 다음과 같습니다.
[10] === 10 //는 거짓입니다
[10] == 10 // 사실입니다
'10'== 10 //는 사실입니다
'10'=== 10 //는 거짓입니다
[] == 0 // 사실입니다
[] === 0 // 거짓입니다
''== false //는 true하지만 true == "a"는 거짓입니다.
''=== 거짓 // 거짓입니다
3. 세미콜론을 라인 터미네이터로 사용하십시오
라인이 종료되는 세미콜론을 사용하는 것은 좋은 습관이며, 개발자가 세미콜론을 추가하는 것을 잊어 버려도 컴파일러에는 대부분의 경우 JavaScript Parser가 자동으로 추가되므로 힌트가 없습니다.
4. 생성자를 만듭니다
코드 사본은 다음과 같습니다.
기능인 (FirstName, lastName) {
this.firstName = FirstName;
this.lastname = lastName;
}
var saad = 새로운 사람 ( "Saad", "Mousliki");
5. 타입, 인스턴스 및 생성자를 사용하도록주의하십시오
코드 사본은 다음과 같습니다.
var arr = [ "a", "b", "c"];
ARR 유형; // "Object"반환
ARR INSTACEOF ARRAY // true
arr.constructor (); // []
6. 자체 대화 기능을 만듭니다
이것은 종종 자체도 익명 함수 또는 즉각적인 통화 함수 표현식 (LLFE)이라고합니다. 함수가 생성되면 다음과 같이 자동으로 실행됩니다.
코드 사본은 다음과 같습니다.
(기능(){
// 자동으로 실행될 일부 개인 코드
}) ();
(기능 (a, b) {
var result = a+b;
반환 결과;
}) (10,20)
7. 배열에 대한 임의의 항목을 만듭니다
코드 사본은 다음과 같습니다.
var 항목 = [12, 548, 'a', 2, 5478, 'foo', 8852, 'doe', 2145, 119];
var randomitem = 항목 [math.floor (math.random () * eirest.length)];
8. 특정 범위에서 난수를 얻습니다
다음 코드는 최저 임금과 최대 값 전에 임의의 가치를 얻는 등 테스트를 위해 가짜 데이터를 생성해야 할 때 매우 일반적입니다.
코드 사본은 다음과 같습니다.
var x = math.floor (math.random () * (max -min + 1)) + min;
9. 숫자 0과 최대 숫자 사이에 임의 숫자 세트를 생성합니다.
코드 사본은 다음과 같습니다.
var numbersArray = [], max = 100;
for (var i = 1; numbersArray.push (i ++) <max;); // 번호 = [0,1,2,3 ... 100]
10. 임의의 영숫자 문자 세트를 생성합니다
코드 사본은 다음과 같습니다.
기능 속도 란도 말 프라 늄 (Len) {
var rdmstring = "";
for (; rdmstring.length <len; rdmstring += math.random (). tostring (36) .substr (2));
rdmstring.substr (0, len);
}
11. 숫자 배열을 방해합니다
코드 사본은 다음과 같습니다.
var 번호 = [5, 458, 120, -215, 228, 400, 122205, -85411];
숫자 = numbers.sort (function () {return math.random () -0.5});
/ * 배열 번호는 예를 들어 [120, 5, 228, -215, 400, 458, -85411, 122205]와 동일합니다. */
12. 문자열 TIM 함수
트림 함수는 문자열에서 공백 문자를 삭제할 수 있으며 Java, C#및 PHP와 같은 여러 언어로 사용할 수 있습니다.
코드 사본은 다음과 같습니다.
string.prototype.trim = function () {return this.replace (/^/s+|/s+$/g, "");};
13. 어울린
코드 사본은 다음과 같습니다.
var array1 = [12, "foo", {name "joe"}, -2458];
var array2 = [ "doe", 555, 100];
Array.prototype.push.apply (Array1, array2);
/ * array1은 [12, "foo", {name "joe"}, -2458, "doe", 555, 100]과 같습니다.
14. 매개 변수 개체를 배열로 변환합니다
코드 사본은 다음과 같습니다.
var argarray = array.prototype.slice.call (인수);
15. 주어진 매개 변수의 숫자인지 확인하십시오
코드 사본은 다음과 같습니다.
함수 isnumber (n) {
return! isnan (parsefloat (n)) && isfinite (n);
}
16. 주어진 매개 변수가 배열인지 확인하십시오
코드 사본은 다음과 같습니다.
함수 isarray (obj) {
return object.prototype.tostring.call (obj) === '[객체 배열]';
}
toString () 메소드를 다시 작성하면 예상 결과가 표시되지 않습니다.
또는 이것을 쓸 수 있습니다.
코드 사본은 다음과 같습니다.
Array.isArray (OBJ); // 새로운 배열 메소드입니다
마찬가지로 여러 프레임을 사용하는 경우 인스턴스를 사용할 수 있으며 컨텐츠가 너무 많으면 결과도 오류가됩니다.
코드 사본은 다음과 같습니다.
var myframe = document.createElement ( 'iframe');
document.body.appendchild (myframe);
var myArray = window.frames [window.frames.length-1] .Array;
var arr = new myArray (a, b, 10); // [a, b, 10]
// 인스턴스가 올바르게 작동하지 않으면 MyArray가 생성자를 잃습니다.
// 생성자는 프레임간에 공유되지 않습니다
ARR 인스턴스 배열; // 거짓
17. 숫자 배열에서 최대 및 최소값을 얻습니다.
코드 사본은 다음과 같습니다.
var 번호 = [5, 458, 120, -215, 228, 400, 122205, -85411];
var maxinnumbers = math.max.apply (수학, 숫자);
var mininnumbers = math.min.apply (수학, 숫자);
18. 배열을 지우십시오
코드 사본은 다음과 같습니다.
var myarray = [12, 222, 1000];
myArray.length = 0; // myArray는 []와 같습니다.
19. Delete를 사용하여 배열에서 항목을 삭제하지 마십시오
개발자는 삭제를 사용하여 배열 항목을 삭제하는 대신 분할을 사용할 수 있습니다. 배열에서 정의되지 않은 항목을 삭제하는 대신 삭제를 대신 사용하십시오.
코드 사본은 다음과 같습니다.
var 항목 = [12, 548, 'a', 2, 5478, 'foo', 8852, 'doe', 2154, 119];
항목. 길이; // 반환 11
항목 삭제 [3]; // true를 반환합니다
항목. 길이; // 반환 11
/ * 항목은 [12, 548, "a", undefined × 1, 5478, "foo", 8852, 정의되지 않은 × 1, "doe", 2154, 119]와 같습니다.
괜찮아요...
코드 사본은 다음과 같습니다.
var 항목 = [12, 548, 'a', 2, 5478, 'foo', 8852, 'doe', 2154, 119];
항목. 길이; // 반환 11
items.splice (3,1);
항목. 길이; // 반환 10
/ * 항목은 [12, 548, "a", 5478, "foo", 8852, undefined × 1, "doe", 2154, 119]와 같습니다.
삭제 방법은 객체 속성을 삭제해야합니다.
20. 길이 속성을 사용하여 배열을 단축하십시오
위에서 언급했듯이 개발자는 길이 속성을 사용하여 배열을 단축 할 수 있습니다.
코드 사본은 다음과 같습니다.
var myarray = [12, 222, 1000, 124, 98, 10];
myArray.length = 4; // myArray는 [12, 222, 1000, 124]와 같습니다.
정의하는 배열 길이 값이 너무 높으면 배열의 길이가 변경되고 일부 정의되지 않은 값이 배열로 채워집니다. 배열의 길이 속성은 읽기 전용이 아닙니다.
코드 사본은 다음과 같습니다.
myArray.length = 10; // 새 배열 길이는 10입니다
myArray [myArray.length -1]; // 한정되지 않은