🏋 Top Posts

👉 Array và array of objects với 10 tình huống xử lý

Làm việc với array thì có thể đơn giản, nhưng khi làm việc với Array of Objects thì nó hoàn toàn khác. Khác ở nhiều khía cạnh, tình huống, kỹ năng, kinh nghiệm. Và tôi tóm lượt lại nhiều câu hỏi trong quá trình làm việc và trên stackoverflow và hy vọng bài viết này có thể giúp bạn giải quyết nhanh các tình huống.

👉 Map, filter and reduce với async/await

Async functions là gì? Bạn có thể sử dụng Map, filter và reduce trong Async functions, nhưng có thể bạn mắc sai lầm hay vô tình nào đó trong những trường hợp thế này không? Không phải lúc nào async-await đều chạy như bạn mong muốn.

👉 Những method cần phải biết khi sử dụng Sets trong javascript?

Kể từ khi được giới thiệu bới ES6 thì Set() đã được sử dụng rộng rãi và giúp những developer tiết kiệm được rất nhiều thời gian trong việc xử lý collection, nhưng remove duplicate...

🏋 New Posts

👉 Khám phá các nguyên tắc video hình ảnh âm thanh và FFmpeg

Sử dụng FFmpeg trong nodejs. Trong thời đại mà video ngắn phổ biến như tiktok, facebook hay trên Piepme, là một lập trình viên, bạn phải hiểu: các nguyên tắc và kỹ thuật đằng sau việc chỉnh sửa video. Bài viết này mô tả ngắn gọn thành phần của các nguyên tắc của video và các công cụ chỉnh sửa video phổ biến, cũng như cách sử dụng FFmpeg trong NodeJS.

👉 Sự khác biệt giữa map và forEach bao gồm tốc độ và khi nào sử dụng trong javascript

map và forEach là một trong số hàm phổ biến và được sử dụng nhiều nhất trong JavaScript kể từ khi ES6 ra đời. Trong bài viết này, chúng ta sẽ thảo luận về sự khác biệt chính giữa chúng và lần lượt đi qua một số ví dụ về cách sử dụng map và forEach.

👉 Học ngôn ngữ lập trình nào đầu tiên khi có 10 ngôn ngữ mạnh nhất???

Đối với nhiều người mới bắt đầu học lập trình, đặc biệt là các bạn sinh viên năm nhất chuẩn bị nhập học hoặc sinh viên chuẩn bị ra trường, việc lựa chọn ngôn ngữ lập trình nào thực sự là một điều đau đầu. Với nhiều câu hỏi được gửi vào các diễn đàn hay các group trên facebook thì có thể nói đó là một vấn đề rất nan giải cho những bạn ở trường hợp trên. Bài viết này chúng tôi tập trung vào các khía cạnh của những ngôn ngữ và hy vọng bạn sẽ có lựa chọn cho riêng mình sau khi cảm nhận được 10 ngôn ngữ lâu đời và mạnh nhất tại thời điểm này.

👉 Những pha bẻ lái code chất lượng cao javascript - Phần 1

Nghề lập trình ngày nào mà chảng phải kinh qua những cú pháp có điều kiện. Đó là những trường hợp mà chúng ta những devjs thường xuyên gặp phải. Và chính bản thân tôi, tôi cũng thích những tình huống về logic và có điều kiện. Những lúc đó kinh nghiệm sẽ mách bảo ta làm thế nào để bẻ lái cho đàn em đứng sau lưng ta, gật đầu liên tục....

👉 CORS là gì? 15 bức ảnh chuyển động tinh tế giúp bạn hiểu rõ về CORS

CORS là gì? Tên đầy đủ là Cross-Origin Resource Sharing. Hiểu sâu hơn đó chính là chia sẻ tài nguyên có nhiều nguồn gốc khác nhau. Chính sách nguồn gốc giống nhau của trình duyệt là một cơ chế bảo mật quan trọng. Khách hàng từ các nguồn khác nhau không thể truy cập tài nguyên của nhau nếu không được phép. Định nghĩa của tương đồng là giao thức, tên miền và số cổng của liên kết truy cập là giống nhau.

👉 6 Cách remove những phần tử trùng nhau trong mảng javascript

How to Remove Array Duplicates in ES6. Có những câu hỏi tôi thường thấy trên những diễn đàn như reddit hay stackoverflow vấn đề làm sao để loại bỏ những phần tử trùng nhau trong array một cách nhanh gọn mà không làm code của bạn rối tung lên. Sau đây bài viết sẽ giúp bạn làm được điều đó với 6 cách loại bỏ phần tử trùng lặp.

👉 4 cách làm phẳng một mảng (flatten array) với javascript

Flatten an array of arrays - Có nhiều trường hợp chúng ta sẽ gặp những dữ liệu trả về từ API ở một nhà cung cấp nào đó. Có một sự bối rối không hề nhẹ cho những bạn chưa từng sử dụng hay chưa từng biết về khái niệm này. Trong bài viết này, tips javascript sẽ cung cấp cho bạn 4 mẹo đơn giản nhưng vô cùng tiện lợi khi muốn làm phẳng mảng trong javascript.

👉 JSONP là gì? Sự khác biệt giữa JSONP và AJAX

JSONP là gì? JSONP (json with padding) là một phương pháp hay còn gọi là phương tiện giao tiếp giải quyết vấn đề truy cập dữ liệu giữa các domain khác nhau. Do chính sách cùng nguồn gốc chính vì vậy các trang web có thể lấy dữ liệu JSON được tạo động từ các nguồn khác và chế độ sử dụng này được gọi là JSONP. Dữ liệu được thu thập bằng JSONP không phải là JSON, mà là JavaScript tùy ý, được trình thông dịch JavaScript thực thi thay vì được phân tích cú pháp bởi trình phân tích cú pháp JSON.

👉 https là gì và có thực sự an toàn không?

Nếu bạn là một người luôn thích đọc tin tức lập trình mỗi buổi sáng thì tôi cam đoan bạn sẽ không hề quên bài viết trước đây đó là "HTTP là gì? HTTPS là gì? Sự khác biệt giữa HTTPS và HTTP". Ở đó giúp bạn nắm bắt chi tiết hơn về khái niệm đó. Nói một cách đơn giản, https là http + ssl, mã hóa nội dung của giao tiếp http, là phiên bản bảo mật của HTTP và là giao thức HTTP được mã hóa bằng TLS / SSL

👉 Array và array of objects với 10 tình huống xử lý

Làm việc với array thì có thể đơn giản, nhưng khi làm việc với Array of Objects thì nó hoàn toàn khác. Khác ở nhiều khía cạnh, tình huống, kỹ năng, kinh nghiệm. Và tôi tóm lượt lại nhiều câu hỏi trong quá trình làm việc và trên stackoverflow và hy vọng bài viết này có thể giúp bạn giải quyết nhanh các tình huống.

👉 Sử dụng Axios interceptors làm mới token với refresh token trong jwt

Axios interceptor la gi? Tại sao lại được quan tâm nhiều đến vậy, hiệu quả của việc sử dụng interceptors trong Axios như thế nào? Và cơ chế lấy lại token khi token hết hạn khi sử dụng interceptors axios kết hợp với refreshToken.

👉 JSON Web Token (JWT) - Thực hành sử dụng refresh token khi token hết hạn với nodejs và express js

JSON Web Token (JWT) là một cơ chế bảo vệ tài nguyên có thể nói đến bây giờ nó phổ biến rộng rãi đến mức nhà nhà, người người ai cũng biết đến nó. Nhưng hiện tại qua nhiều diễn đàn, vẫn còn đâu đó những câu hỏi như làm sao lấy lại token mới nếu như hết hạn sử dụng refresh token?

👉 15 kỹ thuật lập trình javascript dễ đọc dễ hiểu và dễ bảo trì

Lập trình javascript là quá trình học và hiểu. Hiểu ở đây, không phải là để code chạy đúng là xong, còn nhanh chậm hay code khó đọc cho những người khác thì không quan tâm. Đó là sai lầm lớn nhất trong nghề lập trình. Trong code của bạn, điều quan trọng nhất có ba yếu tố đó là.

👉 Array javascript - học kỹ năng xử lý thông qua người bán sầu riêng

Array trong javascript là một khía cạnh mà thú thật là tips javascript rất thích làm việc với nó. Từ back-end cho tới Front-end đi đâu cũng thấy người ta sử dụng nó song song với Object để giải quyết và lưu trữ dữ liệu. Chính vì vậy trong javascript đã có một sự ưu tiên không hề nhẹ khi liên tiếp bổ sung những method cho array kể từ khi javascript ra đời.

👉 45 hình dạng của css đáng học hỏi

CSS có thể tạo ra nhiều hình dạng khác nhau. Hình vuông và hình chữ nhật rất dễ dàng vì chúng là hình dạng tự nhiên của web. Thêm chiều rộng và chiều cao, và bạn có được hình chữ nhật chính xác mà bạn cần. Thêm bán kính đường viền, bạn có thể biến hình dạng này thành một vòng tròn. Với đủ bán kính đường viền, bạn có thể biến các hình chữ nhật này thành hình tròn và hình elip.

👉 Kỹ năng xử lý chuỗi trong Javascript

Xử lý chuỗi trong javascript là một kỹ năng cơ bản cho những bạn mới bắt đầu học javascript. Vì String, Object, Array được sử dụng rất nhiều trong một ứng dụng javascript. Trong bài viết này, tôi sẽ liệt kệ ra nhiều method dành cho String. Hy vọng sẽ giúp bạn hiểu hơn về String javascript.

👉 Học javascript và những nguyên tắc chung cho mọi level

Học javascript cơ bản hay nâng cao. Hay bạn là người mới học lập trình hay là lâu năm rồi thì cũng phải hiểu trong bất cứ ngành nghề gì thì cũng có những nguyên tắc nhất định cần phải nắm và học một cách thành thạo. Nếu không bạn biết đấy, quy luật đào thải sẽ cuốn đi những người không nắm được những nguyên tắc trong nghề lập trình viên. Nếu là bạn thì bạn sẽ nghĩ về những nguyên tắc đó như thế nào?

👉 Prototype là gì? Lập trình hướng đối tượng (OOP) trong javascript

Trong lập trình hướng đối tượng OOP bao gồm rất nhiều nộ dung và khái niệm như class, Prototype, _proto_, prototype chain, constructor, inheritance... Ngoài ra nó cũng liên quan đến pattern như factory pattern, constructor pattern, prototype pattern. Mối quan hệ giữa các khái niệm này là gì?, mối quan hệ giữa các mô hình là gì?, chúng phát triển như thế nào và chúng hoạt động như thế nào? Bản thân người viết cũng chóng cả mặt chứ huống hồ gì những bạn mới học JS.

👉 Kết thúc cuộc phiêu lưu của Redis Salvatore Sanfilippo - Bài học rút ra cũng giống như flappy bird Nguyễn Hà Đông

Nghe tiêu đề bạn cũng như tôi đều giật mình nếu như bạn là một người luôn đọc về tin tức của các nhà lập trình. Đây không phải vấn đề của Redis mà là người bắt đầu dự án Redis hơn mười năm trước. Và vào ngày 01/07/2020 Salvatore Sanfilippo đã nói lời chào tạm biệt tới Redis cũng giống như cách mà Ryan Dahl đã rời bỏ Node để xây dựng Deno. Nhưng Salvatore Sanfilippo hành động như thế nào khi rời Redis?

👉 Đừng học về function javascript cho đến khi bạn được được 8 cách viết này

Là một lập trình viên bạn không thể không biết một trong những tính năng tốt nhất của JavaScript là triển khai các funtions. Không giống như các ngôn ngữ lập trình khác cung cấp các loại hàm khác nhau cho các kịch bản khác nhau, nhưng đối với ngôn ngữ lập trình JavaScript chỉ cung cấp cho chúng ta một loại hàm bao gồm tất cả các kịch bản như (Regular Function, Anonymous Function, Arrow Function...)

👉 Moment.js tutorial

Moment.js is a lightweight JavaScript date library for parsing, validating, manipulating, and formatting dates. Moment.js tutorial shows how to work with date and time in JavaScript with Moment.js module.

👉 Load balancer - Nếu bạn không hiểu không sao, nhưng nếu bạn là một kỹ sư thì không thể không hiểu?

Load balancer là gì? Load balancer mang đến lợi ích gì? Cụm từ này quá nổi tiếng đến mức những bạn năm nhất cũng đã từng nghe tới chứ đừng nói những lập trình viện như bạn. Tôi biết không ít những bạn trong công ty tôi vẫn không biết chút gì về Load balancer (LB) cho nên hy vọng rằng qua bài viết này những bạn chưa hề biết thì bây giờ mạnh dạn tự tin trả lời là biết, sau khi đọc bài viết này.

👉 ES6 Features

ES6 Features - Arrow Functions ,Classes ,Enhanced Object Literals ,String interpolation ,Destructuring ,Default ,Spread ,Spread + Object Literals ,Rest ,Let ,Const ,For..of ,Unicode ,Modules & Module Loaders ,Set ,WeakSet ,Map ,WeakMap ,Proxies ,Symbols ,Inheritable Built-ins ,New Library ,Binary and Octal ,Promises ,Reflect ,Tail Call Optimization

👉 25 trường hợp sử dụng reduce javascript

Reduce javascript - Qua một cuộc khảo sát về độ khó của các method thì 90% câu trả lời đó chính là reduce method. Không quá bất ngờ, bời vì sử dụng reduce gây hiểu nhầm nhất, và cũng gây khó hiểu nhất trong các method. Lý do vì sao? Tôi sẽ nói cho các bạn nghe ngay dưới đây.

👉 HTTP là gì? HTTPS là gì? Sự khác biệt giữa HTTPS và HTTP

HTTP là gì? HTTPS là gì? Sự khác biệt giữa HTTPS và HTTP đó là những gì trong bài viết mà tips javascript muốn truyền đạt lại cho những bạn chưa hiểu được những khái niệm trên. Và qua đó giúp các bạn đánh giá được tầm quan trọng như thế nào trong việc sử dụng SSL hay TSL cho ứng dụng hay api của bạn.

👉 UUID là gì? Cách tạo UUID với javascript chỉ với 6 dòng code

UUID là gì? Hẳn là mỗi developer cũng đã nghe về UUID rồi, nói sơ qua thì UUID là viết tắt của Universally Unique IDentifier, có thể hiểu đó là một định danh duy nhất và không có cái thứ hai. Hay nói cách khác đó là một id duy nhất trong global.

👉 Sử dụng JavaScript truy cập camera sau, trước và chụp màn mình thiết bị di động

Sử dụng JavaScript truy cập camera sau, trước và chụp màn mình thiết bị di động. Trong bài viết này, tôi sẽ chỉ cho bạn cách truy cập camera của thiết bị trên một trang web thông qua JavaScript và hỗ trợ nhiều trình duyệt mà không cần đến các thư viện bên ngoài.

👉 map và set trong ES6

Map vs Set ES6. Bạn đã bao giờ chán học về ES6? Bởi vì ES6 đã có quá nhiều lời bàn tán về những tính năng, cách sử dụng... Với tôi, tôi chưa hề chán. Bởi vì tôi biết rằng rằng có rất nhiều API thường được sử dụng trong ES6, không hơn, không kém và chúng chỉ phù hợp để sử dụng trong các dự án.

👉 Refresh token là gì? Cách hoạt động có khác gì so với token không?

Ở những bài trước chúng ta đã nói nhiều về JWT là gì? Vì sao phải sử dụng JWT, trong suốt quá trình sử dụng JWT chúng tôi có nhận được nhiều phản hồi về chủ đề JWT. Trong đó có một vấn đề mà có nhiều bạn chưa hiểu đó là 'Refresh token là gì'. Nếu bạn có chung một câu hỏi như vậy thì bài viết này sẽ dành cho bạn.

👉 Thật nực cười khi nói về setTimeout

Như tiêu đề "Thật nực cười khi nói về setTimeout" bởi vì sao tôi nói về vấn đề này cho các bạn. Bởi vì các bạn quá chủ quan, các bạn cho rằng bạn đã hiểu về javascript. Và đây là một tình huống mới đây thôi, tôi đã gặp. Hãy xem tình huống đó như thế nào và vì sao nó thật nực cười.

👉 14 cách copy array trong javascript

Làm việc với array trong javascript không tránh khỏi những lúc chúng ta phải clone array hay copy array trong code của mỗi lập trình viên javascript. Để sao chép một mảng không phải là khó nhưng việc copy một array gây ra nhiều lỗi nhất, vì nó liên quan đến việc tham chiếu tới array gốc.

👉 Kiểm tra object rỗng JavaScript với 6 cách

Check object empty js. Một bài viết trình bày 6 cách để kiểm tra object rỗng trong JavaScript dành cho những bạn mới tập làm quen lập trình với JavaScript thông qua object. Ở bài viết này thì bạn sẽ được giới thiệu về object trong JavaScript thông qua những cách làm sử dụng es5 và es6.

👉 Web Scraping là gì? 4 cách học web scraping với javascript và nodejs

Web Scraping là gì? Web Scraping là trích xuất dữ liệu từ một bất kỳ website hay còn gọi là "cào" dữ liệu trên một trang web. Không giống như quá trình trích xuất dữ liệu thủ công, Web Scraping sử dụng tự động hóa thông minh để lấy hàng trăm, hàng triệu hoặc thậm chí hàng tỷ dữ liệu trên internet. Học web scraping cũng không khó, nhất là những lập trình viên sử dụng javascript và nodejs.

👉 ES2020 - Dynamic import

ES2020 javascript đã cung cấp cho developers thêm nhiều chức năng như Optional Chaining, Nullish coalescing Operator... Và trong đó có một tính năng tuyệt vời đó là Dynamic Imports. Và do đó, trong bài viết này, tipjs sẽ giúp bạn hiểu và khi nào sử dụng về Dynamic import trong javascript.

👉 Debug javascript chrome

I think everyone has encounter a bug in his life - not the natural, but the real one - the code one. Like really, even the most experienced programmers need to watch out for bugs. These are such easy-to-do and nasty things, that you can consider yourself lucky if you haven't ever had one in your code-base.

👉 ES2020 javascript hoàn thiện, code của chúng ta đã thay đổi như thế nào?

ES2020 là phiên bản của ECMAScript tương ứng đến năm 2020. Phiên bản này không chứa nhiều tính năng mới như ES6 (ES2015). Nhưng nhiều tính năng thú vị và hữu ích cũng đã được thêm vào. Bài viết này giới thiệu các tính năng mới của ES2020 kèm theo các ví dụ để minh hoạ. Bằng cách này, bạn có thể nhanh chóng hiểu các tính năng mới này mà không yêu cầu giải thích phức tạp.

👉 Tải video facebook với một click

Tải video trên facebook bây giờ trở thành xu thế cho mọi người. Còn cách tải video trên facebook như thế nào thì đa số mọi người còn chưa biết. Nhưng với những developer thì chuyện đó quá đơn giản. Bài post này sẽ hướng dẫn cho devjs cách get link video facebook như thế nào.

👉 debounce vs throttle javascript

Debounce javascript và throttle không phải là hai khái niệm duy nhất trong javascript giúp tối ưu hoá người dùng và cải thiện performance của ứng dụng hay website của chúng ta. Nhưng nếu như bạn là một developer mà không biết hai tính năng này thì có thể bạn đã bỏ lỡ một kiến thức rất quan trọng, và có thể rớt ngay vòng 1 của buổi phỏng vấn.

👉 Firebase là gì? Tips and tricks firebase

Firebase là gì? Firebase Analytics là gì? Firebase là gì? Firebase là một Backend-as-a-Service - BaaS. Firebase theo nghĩa rộng là nền tảng phát triển ứng dụng trên thiết bị di động và web. Firebase giải phóng các developer để tập trung tạo ra trải nghiệm cho người dùng sử dụng sản phẩm một cách tuyệt vời. Bạn không cần quản lý máy chủ. Bạn không cần viết API. Firebase là máy chủ, API và kho dữ liệu của bạn, tất cả đều được viết một cách tổng quát đến mức bạn có thể sửa đổi nó cho phù hợp với hầu hết nhu cầu. Vâng, đôi khi bạn sẽ cần phải sử dụng các dịch vụ khác của Google Cloud cho các ứng dụng nâng cao của mình.

👉 End-to-end là gì? Không phải ứng dụng nào cũng bảo mật dữ liệu giống nhau?

End-to-end là gì? Thông tin là sức mạnh. Và những gì chúng ta trao đổi hằng ngày qua những ứng dụng như Piepme, zalo, facebook... đều có những giá trị to lớn, cho dù đó chỉ là những dòng chat của mỗi cá nhân. Nhưng nếu bạn là một doanh nghiệp thì đó lại là vấn đề lớn để quan tâm đến việc bảo mật nội dung tin nhắn hay dữ liệu tổ chức or cá nhân.