Serials Javascript Style Guide – jQuery

jQuery Dollar prefix Các đối tượng jQuery bắt đầu với dấu $. // bad const sidebar = $(‘.sidebar’); // good const $sidebar = $(‘.sidebar’); // good const $sidebarBtn = $(‘.sidebar-btn’); Cache Cache jQuery lookups. // bad function setSidebar() { $(‘.sidebar’).hide(); // … $(‘.sidebar’).css({ ‘background-color’: ‘pink’, }); } // good function setSidebar() { const $sidebar =…

Serials Javascript Style Guide – Events

Events Hash Khi đính kèm dữ liệu payloads vào các sự kiện (cho dù là sự kiện DOM hoặc cái gì đó riêng biệt như sự kiện Backbone), thì truyền vào 1 object literal (được biết như là “hash”) thay vì là 1 raw value. Điều này cho phép thêm mới dữ liệu mà không…

Serials Javascript Style Guide – Accessors

Accessors Not required Không bắt buộc hàm truy cập đối với các thuộc tính No getters-setters Không dùng JavaScript getters/setters vì chúng gây ra side effects không mong muốn và khó test, maintain, và vài lý do khác. Vì thế nên sử dụng getVal() và setVal(‘hello’) nếu muốn có hàm truy cập. // bad class…

Serials Javascript Style Guide – Type Casting & Coercion

Serials Javascript Style Guide – Type Casting & Coercion Type Casting & Coercion Explicit Thực hiện ép kiểu ở đầu của câu lệnh. Strings Strings: eslint: no-new-wrappers // => this.reviewScore = 9; // bad const totalScore = new String(this.reviewScore); // typeof totalScore is "object" not "string" // bad const totalScore = this.reviewScore + ”; //…

Serials Javascript Style Guide – Commas

Commas Leading trailing Bắt đầu bằng dấu phẩy ư: Không. eslint: comma-style // bad const story = [ once , upon , aTime ]; // good const story = [ once, upon, aTime, ]; // bad const hero = { firstName: ‘Ada’ , lastName: ‘Lovelace’ , birthYear: 1815 , superPower: ‘computers’ }; // good const…

Serials Javascript Style Guide – Whitespace

Whitespace Spaces Sử dụng tab mềm (kí tự khoảng trắng) với 2 khoảng trắng. eslint: indent // bad function foo() { ∙∙∙∙let name; } // bad function bar() { ∙let name; } // good function baz() { ∙∙let name; } Before blocks Thêm 1 khoảng trắng trước khi bắt đầu dấu ngoặc. eslint: space-before-blocks //…

Serials Javascript Style Guide – Comments

Comments Multiline Sử dụng /** … */ khi comment nhiều dòng. // bad // make() returns a new element // based on the passed in tag name // // @param {String} tag // @return {Element} element function make(tag) { // … return element; } // good /** * make() returns a new element * based…

Serials Javascript Style Guide – Hoisting

Hoisting 14.1 About Khái báo var được đưa lên đầu phạm vi hàm gần nhất, còn các phép gán thì không. Các khai báo const và let được biết đến với nội dung Temporal Dead Zones (TDZ). Nó quan trọng để biết rằng typeof không an toàn. // we know this wouldn’t work (assuming there…

Serials Javascript Style Guide – Variables

Serials Javascript Style Guide – Variables Variables 13.1 Const Luôn sử dụng const hoặc let để khai báo biến. Nếu không biến khai báo sẽ là toàn cục. eslint: no-undef prefer-const // bad superPower = new SuperPower(); //global variable // good const superPower = new SuperPower(); 13.2 One const Chỉ sử dụng 1 const hoặc…