Học React/Redux qua ví dụ thực tế: Viết Component đầu tiên
Quay trở lại với bài học của chúng ta, cuối bài trước chúng ta đã tạo xong project với những thứ cơ bản cần thiết, bước tiếp theo chúng ta sẽ thêm module react-hot-loader để phục vụ việc develop dễ hơn. Hay nói một cách đơn giản, khi có bất cứ sự thay đổi nào trong source code của chúng ta, thì sự ...
Tôi đã viết phim.clgt.vn như thế nào
Động lực Đối với nghề lập trình viên thần thánh, nếu một sớm mai thức dậy anh em cảm thấy ko có bất kì động lực nào để tỉnh, chỉ muốn ngủ tiếp, đó là dấu hiệu cho thấy anh em đang sắp bị burnout, rằng công việc hiện tại quá nhàm chán. Đó là một dấu hiệu xấu. Nếu ko vực dậy anh em sẽ nhảy ...
Webpack series (ep2) - CSS Splitting - Tách css trong Webpack
Code splitting (chia nhỏ code) là một trong những tính năng làm nên tên tuổi của Webpack. Và với riêng bản thân mình thấy thì đây chính là tính năng có giá trị nhất của webpack. Code splitting là gì? Như cái tên của nó. Nó cho phép chung ta chia nhỏ code ra và chỉ thật tải và execute khi ...
Module pattern trong plain JavaScript
Trong plain JavaScript, như đã biết là nó không hề có khái niệm module. Tuy nhiên nhờ có cơ chế closure mà chúng ta có thể thực thi được module pattern. Ví dụ: function counter(initValue) { var currentValue = initValue; function increase(change) { currentValue += change; ...
Cơ chế hoạt động của javascript và nodejs
Cuộc đời là đóa hoa mà tình yêu là mật ngọt. -- Victor Hugo Các bạn có thể đọc bài viết gốc tại đây Trong javascript, hầu hết các lời gọi I/O đều là non-blocking. Nghĩa là khi có HTTP request, truy xuất dữ liệu trong DB hoặc đọc ghi vào bộ nhớ thì hệ thống sẽ không tạm dừng ...
var, let và const trong ES6
Mấy bài viết nói về 3 từ khóa này trong JavaScript thì có nhiều rồi, mình chỉ tổng hợp lại cho ngắn để các bạn lười đọc tham khảo nhanh thôi const const dùng để khai báo một hằng số - là một giá trị không thay đổi được trong suốt quá trình chạy. Ví dụ: const A = 5; A = 10; // Lỗi ...
[Javascript] Promise - Lời hứa ngọt ngào (P.2)
Mình cũng viết ở: [Javascript] Promise – Lời hứa ngọt ngào (P2) Ở phần trước, mình đã giới thiệu qua Promise là gì và tính chất xử lí bất đồng bộ của nó. Trong phần tiếp theo này, chúng ta sẽ xem xét liệu việc xử lí bất đồng bộ của Promise cung cấp có gì đặc biệt, nó giúp ích ta như thế ...
12 thủ thuật vô cùng hữu ích mà lập trình viên JavaScript cần biết
Trong bài viết này tôi sẽ chia sẻ 12 thủ thuật vô cùng hữu ích cho JavaScript . Những thủ thuật này sẽ giúp bạn giảm lượng code cũng như làm code chạy tối ưu hơn. 1. Chuyển đổi kiểu dữ liệu sang boolean sử dụng toán tử !! Đôi lúc chúng ta cần kiểm tra nếu một vài biến tồn tại hoặc nếu ...
Coi phim từ hdonline.com thế nào
Sau khi đọc bài viết Tôi đã viết phim.clgt.vn như thế nào của bác @quocnguyen thì mình có giới thiệu cho em gái trang phim.clgt.vn . Nó coi được 5 phút thì bảo là cái này lấy nguồn phim từ phimmoi.net à? Sao không lấy từ HDOnline.vn ý ? Cũng đang rảnh nên mở trình duyệt lên và chôm link về ...
npm: Tăng tốc gấp 3 lần và cài đặt package offline
Chắc chắn là ai đã từng làm việc với npm thì đều biết một điều rằng npm nó siêu chậm. Vì vậy mình hay hạn chế chạy npm install đến mức tối thiểu và thường không nhận được patch update, ... cũng như nhiều vấn đề khác phát sinh. Trong bài viết này mình sẽ giới thiệu với các bạn một package không ...
Làm quen với MithrilJS - Phần 1
Bài viết gốc được đăng ở Ê-ku, có sửa lại xíu cho phù hợp. Mithril là gì? Mithril là một JavaScript framework gọn nhẹ nhưng rất mạnh mẽ, được dùng để xây dựng các ứng dụng web một trang (Single Page Applications - SPA). Mithril được viết hoàn toàn bằng ES5, hỗ trợ xây dựng giao diện với ...
Tìm hiểu về Javascript Closure
Javascript Closure Closure là một hàm (function), trong hàm đó có sử dụng những biến độc lập (là biến được sử dụng locally trong hàm nhưng lại được khai báo ở ngoài hàm(function)). Các bạn cũng có thể hiểu nôm na: Closure là những hàm có khả năng ghi nhớ môi trường mà chúng được tạo ra. ...
[Javascript] Promise - Lời hứa ngọt ngào (P.1)
Mình cũng viết ở: [Javascript] Promise – Lời hứa ngọt ngào (P1) Live demo: https://repl.it/FqUc/0 Javascript là một ngôn ngữ rất hữu dụng nhưng lại hết sức kì quặc. Khi bạn làm việc với Javascript, một trong những điều khó khăn nhất mà bạn sẽ phải đối mặt đó là xử lí các lệnh bất đồng bộ ...
Userscript đổi emoticon lúc chat của Facebook thành Yahoo! Messenger
Cái này mình làm cũng vài tháng trước rồi, giờ chia sẻ cho bạn nào có nhu cầu nghiên cứu cho vui Github: yahoo-messenger-emoticons-for-facebook Cách cài đặt Cài đặt Tamperscript cho Chrome/Cốc Cốc hoặc Greasemonkey cho Firefox Vào link này rồi nhấn Install. Refresh các ...
Những vấn đề thường được hỏi khi phỏng vấn về Javascript
Nhu cầu về Javascript developer hiện nay trong thị trường IT là rất lớn. Nếu bạn có kiến thức ở mảng này thì cơ hội nghề nghiệp cũng như thu nhập của bạn cũng sẽ không hề ít. Nhưng trước khi bạn có được công việc mà bạn mong muốn, bạn sẽ phải thể hiện cho nhà tuyển dụng thấy khả năng của mình thông ...
Làm quen với MithrilJS - Phần 2
Tiếp tục loạt bài thú vị về framework không ai xài Các hooks trong vòng đời của vnode và component Trong bài viết trước mình đã nói sơ về vnode, là cách thức mithril xây dựng cây DOM trong trang. Bạn dùng hàm m(selector, attributes, children) để tạo ra vnode. // <h1 class="title" ...
[Trở lại cơ bản] DOM attribute và property
Trong loạt bài Trở lại cơ bản này mình xin trình bày lại các khái niệm cơ bản về tất cả mọi thứ mình đã từng được học bằng ngôn ngữ đơn giản nhất có thể. Bài viết này, nằm trong mục Web development chủ yếu giải thích về các khái niệm xung quanh HTML và DOM. HTML Như các bạn đã biết ...
JavaScript MVVM lib within 200 LOC (part 1)
Build your own rendering engine We’re not going to re-invent the wheel. We’re going to do simple things that help you have deep understanding of how it is implemented. However, the code will not totally useless. The code is actually part of my library named HtmlJs. Hopefully after ...
quick note angular 1 autofocus fix
Vừa nãy mình làm một cái search component dùng angular 1, gồm một cái toggle khi ấn vào thì overlay search hiện ra. Tất nhiên cái này thì piece of cake mẹ rồi. Tuy nhiên vấn đề là cái search text input phải tự focus vào nó chứ không thể để người dùng phải thêm 1 extra click được. OK, vậy anh thêm ...
Cơ bản về async await trong javascript
Nếu cho tôi 6 tiếng để đốn hạ một cái cây, tôi sẽ dành 4 tiếng đầu tiên để mài rìu. -- Abraham Lincoln Bạn có thể đọc bài gốc tại đây Khi bắt đầu lập trình với nodejs, vì javascript(js) là bất đồng bộ(asynchoronous) nên mình gặp khó khăn trong việc tổ chức code giống như trong lập trình ...