2013-03-16 33 views
5

Tôi đã khởi tạo 2 biến, var1$var2 trong $(document).ready(function() trong jQuery. Sự khác biệt chính (hoặc sự khác biệt có thể) giữa 2 biến này là gì?

var1 = "var1"; 
$var2 = "var2"; 
$('#click1').click(function() { 
    alert(var1); 
}); 
$('#click2').click(function() { 
    alert($var2); 
}); 

Here là fiddle làm việc.

+0

bạn có thể giải thích một chút không? cái nào là toàn cục? và điều đó có nghĩa là gì? –

+0

Chúng giống nhau. "$" là một ký tự hợp pháp cho tên biến, như "t" hoặc "a". –

+0

Chúng chỉ được viết một cách khác nhau; không liên quan đến jquery, bạn có thể bắt đầu các tên biến với $ và có $ MyVariableName. Như mã của bạn, chúng chỉ là chuỗi. – frenchie

Trả lời

13

Không có sự khác biệt. Javascript cho phép ký tự $ trong số nhận dạng, chẳng hạn như tên biến và hàm, giống như nó cho phép chữ cái, chữ số và một số ký tự dấu chấm câu khác được sử dụng. Nó không có ý nghĩa đặc biệt.

jQuery đặt biến số $ toàn cầu thành đối tượng có một số hành vi đặc biệt, do đó, các biến bắt đầu bằng $ thường được dành riêng cho các biến hoặc giá trị liên quan đến jQuery. Tuy nhiên, điều này không được thực thi ở mọi cấp độ. Bạn được tự do sử dụng $ trong các tên biến ở bất kỳ đâu và theo bất kỳ cách nào bạn muốn.

+1

+1 câu trả lời hay. Cá nhân tôi muốn tránh '$ varname' trong JavaScript vì nó giúp giữ cú pháp JavaScript tách biệt với cú pháp PHP;) –

+2

+1. Tôi thích sử dụng '$' cho các biến mà tôi biết sẽ giữ các đối tượng jQuery - chỉ là một lời nhắc nhở bổ sung cho bản thân chúng là gì. (Và tôi không làm PHP vì vậy tôi không có lo lắng của Kolink.) – nnnnnn

+0

Và đôi khi tôi sử dụng 'var' trong PHP. – undefined

0

Tôi không nghĩ có bất kỳ sự khác biệt nào giữa phạm vi của hai biến. Chỉ có $ var2 có ký hiệu '$' trong tên biến của nó và giữ một giá trị chuỗi khác.

Tôi đã tìm thấy điều này thread để giải thích phạm vi JavaScript khá tốt.

1

Thực ra chúng giống nhau. Dấu "$" được sử dụng để chỉ ra rằng biến được sử dụng với jQuery. Đây là cách thuận tiện để nhà phát triển lưu ý nó. Bạn có thể sử dụng cả "var1" và "$ var2" trong javascript thuần túy và jquery.

Bạn nên xem xét các quy tắc để khai báo biến trong JavaScript, bạn sẽ thấy rằng bạn có thể sử dụng dấu "$" trong biến của mình.

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