2012-01-26 25 views
5

Tôi đã sử dụng JavaScript một thời gian và cho rằng nó sẽ hữu ích (đặc biệt là đối với những người mới sử dụng ngôn ngữ) để liệt kê một số phím tắt yêu thích của tôi.Một số phím tắt/thủ thuật JavaScript phổ biến là gì?

ternary nhà điều hành

Thay thế: if(a) then {b} else {c} Với: (a) ? b:c;

toán tử cộng chỉ hành

Thay parseInt(x,10) + parseInt(y,10) với +x + +y

Mảng tạo

Thay var ary = new Array(); với var ary = [];

biến Tuyên bố

Thay var x; var y; var z = 3; với var x, y, z=3;

chuỗi Multiline (phong cách gần đây-doc)

Thay thế:

var str = 'this'; 
var str += 'covers'; 
var str += 'multiple'; 
var str += 'lines'; 

với:

var str = 'this \ 
covers \ 
multiple \ 
lines"; 

gì khác để bạn sử dụng?

+0

'var str + = 'covers';' không hợp lệ. Các phương thức chuyển đổi số chắc chắn không bằng nhau, xem [So sánh giữa tất cả các phương pháp chuyển đổi số] (http://stackoverflow.com/a/8112802/938089?are-there-are-any-side-effects-of-using- this-method-to-convert-a-string-to-an-in). –

+0

@PlatinumAzure Tôi nghĩ rằng OP có nghĩa là "Cho phép viết chuỗi trên nhiều dòng", vì phương pháp được đề xuất không bao gồm dòng mới. –

+0

Rất tiếc, khá đúng. Tôi sẽ xóa nhận xét khác của tôi. –

Trả lời

0

Đó không phải là một câu hỏi.

Nhưng bạn có thể sử dụng:

var a = {}; 

ở vị trí của:

var a = new Object(); 
0

Tôi nghĩ rằng một trong số họ sẽ tạo ra đối tượng:

var obj = {}; thay vì var obj = new Object();

0

Bạn có thể sử dụng tính năng hiểu danh sách. Đặc biệt hữu ích nếu bạn tạo một phương pháp khoảng:

function range(n) { 
    for (var i = 0; i < n; i++) 
    yield i; 
} 

[2 * x for (x in range(100)) if (x * x > 3)] 

ở vị trí của:

var myArray = [] 

for (x in range(100)){ 

    if (x * x > 3) 
    { 
     myArray.push(2*x); 
    } 

} 

(Ví dụ lấy từ wikipedia)

+0

là '[2 * x cho (x trong phạm vi (100)) nếu (x * x> 3)]' một cú pháp javascript hợp lệ? –

+0

Tôi tin rằng nó từ 1,7 trở đi, nó sẽ tạo ra một mảng^_^ – JackalopeZero

+0

dựa trên http://en.wikipedia.org/wiki/JavaScript#Versions, tôi đã cố gắng chạy nó trong FF9 (> 3), và nó bật lên một lỗi JS. –

1

Chuyển đổi sang chuỗi bằng cách thêm chuỗi rỗng. Ví dụ:

var n = 1; 
var s = 1 + ''; 
4

Để rút ngắn khối điều kiện nếu.

Từ:

var x; 

if (a) { 
    x = a; 
} else if (b) { 
    x = b; 
} else { 
    x = 100; 
} 

tới:

x = a || b || 100; 

Bạn có thể sử dụng & & làm logic tương tự như là tốt.

Các vấn đề liên quan