{"id":5022,"date":"2023-11-07T19:26:40","date_gmt":"2023-11-07T12:26:40","guid":{"rendered":"https:\/\/mhgvietnam.com\/?p=5022"},"modified":"2023-11-07T19:26:48","modified_gmt":"2023-11-07T12:26:48","slug":"bo-cau-hoi-phong-van-frontend-danh-cho-moi-vi-tri-ung-tuyen","status":"publish","type":"post","link":"https:\/\/mhgvietnam.com\/en\/bo-cau-hoi-phong-van-frontend-danh-cho-moi-vi-tri-ung-tuyen\/","title":{"rendered":"B\u1ed9 C\u00e2u H\u1ecfi Ph\u1ecfng V\u1ea5n Frontend D\u00e0nh Cho M\u1ecdi V\u1ecb Tr\u00ed \u1ee8ng Tuy\u1ec3n"},"content":{"rendered":"<\/p>\n<div class=\"col\">\n<div class=\"at-above-post addthis_tool\" data-url=\"https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/cac-cau-hoi-phong-van-frontend\/\"><\/div>\n<p>Ng\u00e0y nay, nhu c\u1ea7u cho c\u00e1c v\u1ecb tr\u00ed Frontend ng\u00e0y c\u00e0ng cao. R\u1ea5t nhi\u1ec1u c\u00f4ng ty s\u1eb5n s\u00e0ng tuy\u1ec3n d\u1ee5ng h\u1ecd v\u1edbi m\u1ee9c l\u01b0\u01a1ng h\u1ea5p d\u1eabn. N\u1ebfu b\u1ea1n tin r\u1eb1ng m\u00ecnh c\u00f3 c\u00e1c k\u1ef9 n\u0103ng \u0111\u1ec3 tr\u1edf th\u00e0nh nh\u00e0 ph\u00e1t tri\u1ec3n Frontend v\u00e0 mong mu\u1ed1n t\u1ea1o d\u1ef1ng s\u1ef1 nghi\u1ec7p trong \u0111\u00f3, th\u00ec b\u1ea1n \u0111\u00e3 \u0111\u1ebfn \u0111\u00fang ch\u1ed7.\u00a0<\/p>\n<p>B\u1ed9 <strong>c\u00e2u h\u1ecfi ph\u1ecfng v\u1ea5n Frontend<\/strong> d\u00e0nh cho m\u1ecdi v\u1ecb tr\u00ed \u1ee9ng tuy\u1ec3n n\u00e0y s\u1ebd gi\u00fap b\u1ea1n gi\u1ea3i quy\u1ebft cu\u1ed9c ph\u1ecfng v\u1ea5n ti\u1ebfp theo. H\u00e3y c\u00f9ng Ch\u00fang t\u00f4i t\u00ecm hi\u1ec3u xem ch\u00fang l\u00e0 g\u00ec c\u0169ng nh\u01b0 m\u1ed9t v\u00e0i c\u00e2u tr\u1ea3 l\u1eddi g\u1ee3i \u00fd d\u00e0nh cho ri\u00eang b\u1ea1n nh\u00e9!<\/p>\n<h2 class=\"wp-block-heading\" id=\"h-b\u1ed9-cau-h\u1ecfi-ph\u1ecfng-v\u1ea5n-frontend-danh-cho-c\u1ea5p-intern-va-fresher\"><span class=\"ez-toc-section\" id=\"bo_cau_hoi_phong_van_frontend_danh_cho_cap_intern_va_fresher\"><\/span><strong>B\u1ed9 c\u00e2u h\u1ecfi ph\u1ecfng v\u1ea5n Frontend d\u00e0nh cho c\u1ea5p Intern v\u00e0 Fresher<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3 class=\"wp-block-heading\" id=\"h-m\u1ed9t-k\u1ef9-s\u01b0-frontend-c\u1ea7n-ph\u1ea3i-co-nh\u1eefng-k\u1ef9-nang-gi\"><span class=\"ez-toc-section\" id=\"mot_ky_su_frontend_can_phai_co_nhung_ky_nang_gi\"><\/span><strong>M\u1ed9t k\u1ef9 s\u01b0 Frontend c\u1ea7n ph\u1ea3i c\u00f3 nh\u1eefng k\u1ef9 n\u0103ng g\u00ec?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0110\u00e2y ch\u00ednh l\u00e0 <strong>c\u00e2u h\u1ecfi ph\u1ecfng v\u1ea5n Frontend<\/strong> ph\u1ed5 bi\u1ebfn nh\u1ea5t \u0111\u01b0\u1ee3c c\u00e1c IT Recruiter s\u1eed d\u1ee5ng d\u00e0nh cho c\u00e1c Fresher. C\u00e1c nh\u00e0 ph\u00e1t tri\u1ec3n giao di\u1ec7n ng\u01b0\u1eddi d\u00f9ng s\u1eed d\u1ee5ng c\u00e1c c\u00f4ng ngh\u1ec7 web kh\u00e1c nhau \u0111\u1ec3 thay \u0111\u1ed5i d\u1eef li\u1ec7u \u0111\u01b0\u1ee3c m\u00e3 h\u00f3a th\u00e0nh giao di\u1ec7n th\u00e2n thi\u1ec7n v\u1edbi ng\u01b0\u1eddi d\u00f9ng. Nhi\u1ec1u trong s\u1ed1 \u0111\u00f3 l\u00e0 Trang t\u00ednh ki\u1ec3u x\u1ebfp t\u1ea7ng (CSS), JavaScript, Ng\u00f4n ng\u1eef \u0111\u00e1nh d\u1ea5u si\u00eau v\u0103n b\u1ea3n (HTML), v.v.\u00a0<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img decoding=\"async\" src=\"\/\/www.w3.org\/2000\/svg'%20viewBox='0%200%20500%200'%3E%3C\/svg%3E\" alt=\"c\u00e2u h\u1ecfi ph\u1ecfng v\u1ea5n frontend\" class=\"wp-image-23237\" width=\"500\" data-lazy-srcset=\"https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/Pho\u0309ng-va\u0302\u0301n-Frontend-1024x1024.jpg 1024w, https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/Pho\u0309ng-va\u0302\u0301n-Frontend-300x300.jpg 300w, https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/Pho\u0309ng-va\u0302\u0301n-Frontend-500x500.jpg 500w, https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/Pho\u0309ng-va\u0302\u0301n-Frontend-768x768.jpg 768w, https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/Pho\u0309ng-va\u0302\u0301n-Frontend-1536x1536.jpg 1536w, https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/Pho\u0309ng-va\u0302\u0301n-Frontend.jpg 2000w\" data-lazy-sizes=\"(max-width: 1024px) 100vw, 1024px\" data-lazy-src=\"https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/Pho\u0309ng-va\u0302\u0301n-Frontend-1024x1024.jpg\"><img decoding=\"async\" src=\"https:\/\/Ch%C3%BAng%20t%C3%B4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/Pho%CC%89ng-va%CC%82%CC%81n-Frontend-1024x1024.jpg\" alt=\"c\u00e2u h\u1ecfi ph\u1ecfng v\u1ea5n frontend\" class=\"wp-image-23237\" width=\"500\"><\/figure>\n<\/div>\n<p class=\"has-background\" style=\"background-color:#f1f1f1\"><strong>\u0110\u1ecdc th\u00eam<\/strong>: Frontend, Backend, Fullstack l\u00e0 g\u00ec? Ph\u00e2n Bi\u1ec7t Frontend, Backend, Fullstack<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-d\u1ef1a-tren-goc-nhin-c\u1ee7a-b\u1ea1n-hay-d\u1ecbnh-nghia-react-js\"><span class=\"ez-toc-section\" id=\"dua_tren_goc_nhin_cua_ban_hay_dinh_nghia_react_js\"><\/span><strong>D\u1ef1a tr\u00ean g\u00f3c nh\u00ecn c\u1ee7a b\u1ea1n, h\u00e3y \u0111\u1ecbnh ngh\u0129a React JS<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>L\u00e0 m\u1ed9t th\u01b0 vi\u1ec7n JavaScript front-end m\u00e3 ngu\u1ed3n m\u1edf, ReactJS \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng ch\u1ee7 y\u1ebfu \u0111\u1ec3 x\u00e2y d\u1ef1ng giao di\u1ec7n ng\u01b0\u1eddi d\u00f9ng, \u0111\u1eb7c bi\u1ec7t l\u00e0 cho c\u00e1c \u1ee9ng d\u1ee5ng m\u1ed9t trang. Ngo\u00e0i ra, n\u00f3 c\u00f2n \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng \u0111\u1ec3 x\u1eed l\u00fd l\u1edbp xem cho c\u00e1c \u1ee9ng d\u1ee5ng web v\u00e0 thi\u1ebft b\u1ecb di \u0111\u1ed9ng. React cho ph\u00e9p c\u00e1c l\u1eadp tr\u00ecnh vi\u00ean x\u00e2y d\u1ef1ng c\u00e1c \u1ee9ng d\u1ee5ng web l\u1edbn c\u00f3 th\u1ec3 s\u1eeda \u0111\u1ed5i d\u1eef li\u1ec7u m\u00e0 kh\u00f4ng c\u1ea7n t\u1ea3i l\u1ea1i trang.\u00a0<\/p>\n<p>React JS ch\u00ednh l\u00e0 ch\u1ee7 \u0111\u1ec1 th\u01b0\u1eddng hay \u0111\u01b0\u1ee3c nh\u1eafc \u0111\u1ebfn trong c\u00e1c c\u00e2u h\u1ecfi ph\u1ecfng v\u1ea5n Front end. M\u1ee5c ti\u00eau ch\u00ednh c\u1ee7a React l\u00e0 nhanh ch\u00f3ng, c\u00f3 th\u1ec3 m\u1edf r\u1ed9ng v\u00e0 d\u1ec5 s\u1eed d\u1ee5ng. N\u00f3 ch\u1ec9 ho\u1ea1t \u0111\u1ed9ng tr\u00ean giao di\u1ec7n ng\u01b0\u1eddi d\u00f9ng trong \u1ee9ng d\u1ee5ng v\u00e0 t\u01b0\u01a1ng \u1ee9ng v\u1edbi ch\u1ebf \u0111\u1ed9 xem trong m\u1eabu MVC. N\u00f3 c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng v\u1edbi s\u1ef1 k\u1ebft h\u1ee3p c\u1ee7a c\u00e1c khung ho\u1eb7c th\u01b0 vi\u1ec7n JavaScript kh\u00e1c, nh\u01b0 AngularJS trong MVC.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-nh\u1eefng-l\u1ee3i-ich-c\u1ee7a-d\u1ecbch-v\u1ee5-web-rest-la-gi\"><span class=\"ez-toc-section\" id=\"nhung_loi_ich_cua_dich_vu_web_rest_la_gi\"><\/span><strong>Nh\u1eefng l\u1ee3i \u00edch c\u1ee7a d\u1ecbch v\u1ee5 web REST l\u00e0 g\u00ec?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>D\u01b0\u1edbi \u0111\u00e2y l\u00e0 m\u1ed9t s\u1ed1 \u01b0u \u0111i\u1ec3m c\u1ee7a d\u1ecbch v\u1ee5 web REST:<\/p>\n<ul>\n<li>T\u00ednh \u0111\u01a1n gi\u1ea3n v\u00ec ho\u1ea1t \u0111\u1ed9ng tr\u00ean giao th\u1ee9c HTTP.<\/li>\n<li>Kh\u00f4ng c\u00f3 h\u1ee3p \u0111\u1ed3ng n\u00e0o r\u00f5 r\u00e0ng gi\u1eefa m\u00e1y ch\u1ee7 v\u00e0 m\u00e1y kh\u00e1ch, v\u00ec v\u1eady \u1ee9ng d\u1ee5ng g\u1ea7n nh\u01b0 \u0111\u01b0\u1ee3c k\u1ebft h\u1ee3p v\u1edbi nhau.<\/li>\n<li>C\u00e1c c\u00e1ch ti\u1ebfp c\u1eadn REST c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c th\u1eed nghi\u1ec7m d\u1ec5 d\u00e0ng tr\u00ean tr\u00ecnh duy\u1ec7t.<\/li>\n<li>N\u00f3 c\u0169ng h\u1ed7 tr\u1ee3 nhi\u1ec1u c\u00f4ng ngh\u1ec7 \u0111\u1ec3 truy\u1ec1n, v\u00ed d\u1ee5, h\u00ecnh \u1ea3nh, JSON, XML, v\u0103n b\u1ea3n, v.v.<\/li>\n<li>N\u00f3 l\u00e0 m\u1ed9t giao th\u1ee9c nh\u1eb9.<\/li>\n<\/ul>\n<h3 class=\"wp-block-heading\" id=\"h-b\u1ea1n-bi\u1ebft-gi-v\u1ec1-h\u1ec7-th\u1ed1ng-grid-trong-css-nh\u01b0-th\u1ebf-nao\"><span class=\"ez-toc-section\" id=\"ban_biet_gi_ve_he_thong_grid_trong_css_nhu_the_nao\"><\/span><strong>B\u1ea1n bi\u1ebft g\u00ec v\u1ec1 h\u1ec7 th\u1ed1ng Grid trong CSS nh\u01b0 th\u1ebf n\u00e0o?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0110\u1ec3 tr\u1ea3 l\u1eddi cho c\u00e2u h\u1ecfi ph\u1ecfng v\u1ea5n Frontend n\u00e0y, b\u1ea1n c\u1ea7n ph\u1ea3i \u0111\u1ec1 c\u1eadp \u0111\u1ebfn hai n\u1ed9i dung sau. Th\u1ee9 nh\u1ea5t, CSS chia trang th\u00e0nh c\u00e1c l\u01b0\u1edbi v\u00e0 s\u1eed d\u1ee5ng c\u00e1c l\u01b0\u1edbi \u0111\u00f3 \u0111\u1ec3 x\u1eed l\u00fd n\u1ed9i dung HTML. Th\u1ee9 hai, CSS c\u00f3 th\u1ec3 x\u1ebfp ch\u1ed3ng v\u00e0 l\u00e0m n\u1ed5i b\u1eadt c\u00e1c ph\u1ea7n t\u1eed kh\u00e1c nhau trong c\u00e1c ph\u1ea7n kh\u00e1c nhau c\u1ee7a l\u01b0\u1edbi.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-hay-xac-d\u1ecbnh-cac-th\u1ebb-meta-html\"><span class=\"ez-toc-section\" id=\"hay_xac_dinh_cac_the_meta_html\"><\/span><strong>H\u00e3y x\u00e1c \u0111\u1ecbnh c\u00e1c th\u1ebb meta HTML<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>C\u00e1c th\u1ebb meta HTML bao g\u1ed3m:\u00a0<\/p>\n<ul>\n<li>Th\u1ebb meta \u0111\u01b0\u1ee3c chuy\u1ec3n d\u01b0\u1edbi d\u1ea1ng c\u1eb7p t\u00ean \/ gi\u00e1 tr\u1ecb.<\/li>\n<li>Th\u1ebb meta c\u00f3 th\u1ec3 bao g\u1ed3m d\u1eef li\u1ec7u v\u1ec1 m\u00e3 h\u00f3a, ti\u00eau \u0111\u1ec1 t\u00e0i li\u1ec7u, m\u00f4 t\u1ea3 k\u00fd t\u1ef1, v.v.<\/li>\n<li>Th\u1ebb meta n\u1eb1m trong th\u1ebb head c\u1ee7a trang HTML.<\/li>\n<li>Th\u1ebb meta kh\u00f4ng \u0111\u01b0\u1ee3c hi\u1ec3n th\u1ecb tr\u00ean trang nh\u01b0ng n\u00f3 s\u1ebd \u0111\u01b0\u1ee3c hi\u1ec3n th\u1ecb tr\u00ean tr\u00ecnh duy\u1ec7t.<\/li>\n<\/ul>\n<h3 class=\"wp-block-heading\" id=\"h-cross-site-scripting-xss-la-gi\"><span class=\"ez-toc-section\" id=\"cross-site_scripting_xss_la_gi\"><\/span><strong>Cross-Site Scripting (XSS) l\u00e0 g\u00ec?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Cross-Site Scripting (XSS) l\u00e0 x\u1ea3y ra khi k\u1ebb t\u1ea5n c\u00f4ng s\u1eed d\u1ee5ng m\u1ed9t \u1ee9ng d\u1ee5ng web \u0111\u1ec3 g\u1eedi m\u00e3 \u0111\u1ed9c h\u1ea1i \u0111\u1ebfn m\u1ed9t ng\u01b0\u1eddi d\u00f9ng cu\u1ed1i kh\u00e1c. M\u00e3 n\u00e0y th\u01b0\u1eddng \u1edf d\u1ea1ng t\u1eadp l\u1ec7nh ph\u00eda tr\u00ecnh duy\u1ec7t.<\/p>\n<p>Trang do m\u00e1y ch\u1ee7 cung c\u1ea5p khi ai \u0111\u00f3 y\u00eau c\u1ea7u s\u1ebd kh\u00f4ng b\u1ecb thay \u0111\u1ed5i. Cu\u1ed9c t\u1ea5n c\u00f4ng XSS khai th\u00e1c c\u00e1c \u0111i\u1ec3m y\u1ebfu trong trang bao g\u1ed3m m\u1ed9t bi\u1ebfn \u0111\u01b0\u1ee3c g\u1eedi trong m\u1ed9t y\u00eau c\u1ea7u hi\u1ec3n th\u1ecb \u1edf d\u1ea1ng th\u00f4 trong ph\u1ea3n h\u1ed3i. Trang s\u1ebd ch\u1ec9 hi\u1ec3n th\u1ecb nh\u1eefng g\u00ec \u0111\u00e3 \u0111\u01b0\u1ee3c g\u1eedi c\u00f9ng v\u1edbi y\u00eau c\u1ea7u n\u00e0y.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-khi-nao-b\u1ea1n-nen-s\u1eed-d\u1ee5ng-jquery\"><span class=\"ez-toc-section\" id=\"khi_nao_ban_nen_su_dung_jquery\"><\/span><strong>Khi n\u00e0o b\u1ea1n n\u00ean s\u1eed d\u1ee5ng jQuery?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>jQuery l\u00e0 m\u1ed9t l\u1ef1a ch\u1ecdn t\u1ed1t cho c\u00e1c t\u00e1c v\u1ee5 \u0111\u01a1n gi\u1ea3n. N\u00f3 c\u00f3 m\u1ed9t s\u1ed1 l\u1ee3i th\u1ebf so v\u1edbi c\u00e1c khu\u00f4n kh\u1ed5 kh\u00e1c. Bao g\u1ed3m:<\/p>\n<ul>\n<li>D\u1ec5 d\u00e0ng m\u1edf r\u1ed9ng<\/li>\n<li>D\u1ec5 s\u1eed d\u1ee5ng v\u00e0 h\u1ecdc h\u1ecfi<\/li>\n<li>D\u1ec5 s\u1eed d\u1ee5ng \u0111\u1ec3 thao t\u00e1c v\u00e0 duy\u1ec7t DOM.<\/li>\n<li>H\u1ed7 tr\u1ee3 nhi\u1ec1u tr\u00ecnh duy\u1ec7t (IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)<\/li>\n<li>H\u1ed7 tr\u1ee3 AJAX<\/li>\n<li>R\u1ea5t nhi\u1ec1u plug-in cho m\u1ecdi nhu c\u1ea7u<\/li>\n<\/ul>\n<h3 class=\"wp-block-heading\" id=\"h-dau-la-nh\u1eefng-l\u1ee3i-ich-n\u1ed5i-b\u1eadt-c\u1ee7a-coffeescript-so-v\u1edbi-javascript\"><span class=\"ez-toc-section\" id=\"dau_la_nhung_loi_ich_noi_bat_cua_coffeescript_so_voi_javascript\"><\/span><strong>\u0110\u00e2u l\u00e0 nh\u1eefng l\u1ee3i \u00edch n\u1ed5i b\u1eadt c\u1ee7a CoffeeScript so v\u1edbi JavaScript?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>D\u01b0\u1edbi \u0111\u00e2y l\u00e0 m\u1ed9t s\u1ed1 l\u1ee3i \u00edch n\u1ed5i b\u1eadt c\u1ee7a CoffeeScript m\u00e0 b\u1ea1n c\u00f3 th\u1ec3 \u0111\u1ec1 c\u1eadp \u0111\u1ebfn n\u1ebfu g\u1eb7p ph\u1ea3i c\u00e2u h\u1ecfi ph\u1ecfng v\u1ea5n Frontend n\u00e0y:<\/p>\n<ul>\n<li>So v\u1edbi m\u1ed9t \u0111o\u1ea1n m\u00e3 kh\u1ed5ng l\u1ed3 trong JavaScript, CoffeeScript ch\u1ec9 c\u1ea7n c\u00e1c \u0111o\u1ea1n m\u00e3 ng\u1eafn h\u01a1n v\u1edbi c\u00f9ng ch\u1ee9c n\u0103ng.<\/li>\n<li>D\u1ec5 hi\u1ec3u \u2013 C\u00fa ph\u00e1p c\u1ee7a CoffeeScript kh\u00e1 \u0111\u01a1n gi\u1ea3n so v\u1edbi JavaScript. S\u1eed d\u1ee5ng CoffeeScript, b\u1ea1n c\u00f3 th\u1ec3 ghi l\u1ea1i c\u00e1c m\u00e3 s\u1ea1ch, r\u00f5 r\u00e0ng v\u00e0 d\u1ec5 nh\u1eadn bi\u1ebft.<\/li>\n<li>\u0110\u00e1ng tin c\u1eady \u2013 CoffeeScript l\u00e0 m\u1ed9t ng\u00f4n ng\u1eef l\u1eadp tr\u00ecnh an to\u00e0n v\u00e0 \u0111\u00e1ng tin c\u1eady \u0111\u1ec3 t\u1ea1o c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh \u0111\u1ed9ng.<\/li>\n<li>D\u1ec5 \u0111\u1ecdc v\u00e0 c\u00f3 th\u1ec3 b\u1ea3o tr\u00ec \u2013 CoffeeScript cung c\u1ea5p b\u00ed danh cho h\u1ea7u h\u1ebft c\u00e1c nh\u00e0 khai th\u00e1c, l\u00e0m cho m\u00e3 c\u00f3 th\u1ec3 \u0111\u1ecdc \u0111\u01b0\u1ee3c. C\u0169ng t\u01b0\u01a1ng \u0111\u1ed1i d\u1ec5 d\u00e0ng duy tr\u00ec c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh \u0111\u01b0\u1ee3c vi\u1ebft b\u1eb1ng CoffeeScript.<\/li>\n<li>T\u00ednh k\u1ebf th\u1eeba d\u1ef1a tr\u00ean l\u1edbp \u2013 JavaScript kh\u00f4ng c\u00f3 c\u00e1c l\u1edbp, thay v\u00e0o \u0111\u00f3, n\u00f3 cung c\u1ea5p c\u00e1c nguy\u00ean m\u1eabu m\u1ea1nh m\u1ebd nh\u01b0ng ph\u1ee9c t\u1ea1p. Kh\u00f4ng gi\u1ed1ng nh\u01b0 JavaScript, trong CoffeeScript, ch\u00fang ta c\u00f3 th\u1ec3 t\u1ea1o c\u00e1c l\u1edbp v\u00e0 k\u1ebf th\u1eeba ch\u00fang. Ngo\u00e0i ra, n\u00f3 c\u0169ng cung c\u1ea5p c\u00e1c thu\u1ed9c t\u00ednh t\u1ee9c th\u1eddi v\u00e0 t\u0129nh. Ch\u00fang s\u1eed d\u1ee5ng nguy\u00ean m\u1eabu g\u1ed1c c\u1ee7a JavaScript \u0111\u1ec3 x\u00e2y d\u1ef1ng c\u00e1c l\u1edbp.<\/li>\n<li>H\u1ed7 tr\u1ee3 th\u01b0 vi\u1ec7n m\u1edf r\u1ed9ng \u2013 Trong CoffeeScript, ch\u00fang ta c\u00f3 th\u1ec3 s\u1eed d\u1ee5ng c\u00e1c th\u01b0 vi\u1ec7n JavaScript v\u00e0 ng\u01b0\u1ee3c l\u1ea1i. Do \u0111\u00f3, b\u1ea1n c\u00f3 quy\u1ec1n truy c\u1eadp v\u00e0o v\u00f4 s\u1ed1 b\u1ed9 th\u01b0 vi\u1ec7n khi ho\u1ea1t \u0111\u1ed9ng v\u1edbi CoffeeScript.<\/li>\n<\/ul>\n<div class=\"wp-block-buttons is-layout-flex\">\n<div class=\"wp-block-button aligncenter\"><strong>\u1ee8ng tuy\u1ec3n Frontend Developer t\u1ea1i \u0111\u00e2y!<\/strong><\/div>\n<\/div>\n<h2 class=\"wp-block-heading\" id=\"h-b\u1ed9-cau-h\u1ecfi-ph\u1ecfng-v\u1ea5n-frontend-danh-cho-c\u1ea5p-senior-va-manager\"><span class=\"ez-toc-section\" id=\"bo_cau_hoi_phong_van_frontend_danh_cho_cap_senior_va_manager\"><\/span><strong>B\u1ed9 c\u00e2u h\u1ecfi ph\u1ecfng v\u1ea5n Frontend d\u00e0nh cho c\u1ea5p Senior v\u00e0 Manager<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3 class=\"wp-block-heading\" id=\"h-stringify-la-gi\"><span class=\"ez-toc-section\" id=\"stringify_la_gi\"><\/span><strong>Stringify l\u00e0 g\u00ec?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Trong m\u1ed9t ph\u01b0\u01a1ng th\u1ee9c JSON, Stringify \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng \u0111\u1ec3 chuy\u1ec3n \u0111\u1ed5i m\u1ed9t \u0111\u1ed1i t\u01b0\u1ee3ng JavaScript th\u00e0nh m\u1ed9t chu\u1ed7i. JSON l\u00e0 m\u1ed9t c\u1ea5u tr\u00fac chung \u0111\u1ec3 nh\u1eadn v\u00e0 g\u1eedi d\u1eef li\u1ec7u gi\u1eefa m\u00e1y ch\u1ee7 web v\u00e0 m\u00e1y kh\u00e1ch, v\u00e0 khi ch\u00fang ta mu\u1ed1n g\u1eedi d\u1eef li\u1ec7u \u0111\u1ebfn m\u00e1y ch\u1ee7 web, \u0111\u1ed1i t\u01b0\u1ee3ng ph\u1ea3i l\u00e0 m\u1ed9t chu\u1ed7i.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-d\u1ec1-c\u1eadp-d\u1ebfn-s\u1ef1-khac-bi\u1ec7t-gi\u1eefa-mysql-va-mongodb\"><span class=\"ez-toc-section\" id=\"de_cap_den_su_khac_biet_giua_mysql_va_mongodb\"><\/span><strong>\u0110\u1ec1 c\u1eadp \u0111\u1ebfn s\u1ef1 kh\u00e1c bi\u1ec7t gi\u1eefa MySQL v\u00e0 MongoDB<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li>MySQL: \u0110\u00e2y l\u00e0 m\u1ed9t H\u1ec7 th\u1ed1ng qu\u1ea3n l\u00fd c\u01a1 s\u1edf d\u1eef li\u1ec7u quan h\u1ec7 (RDBMS), s\u1eed d\u1ee5ng SQL l\u00e0m ng\u00f4n ng\u1eef chu\u1ea9n \u0111\u1ec3 x\u1eed l\u00fd c\u01a1 s\u1edf d\u1eef li\u1ec7u c\u1ee7a n\u00f3. Gi\u1ed1ng nh\u01b0 c\u00e1c h\u1ec7 qu\u1ea3n tr\u1ecb c\u01a1 s\u1edf d\u1eef li\u1ec7u quan h\u1ec7 kh\u00e1c nhau, MySQL s\u1eed d\u1ee5ng c\u1ea5u tr\u00fac gi\u1ed1ng b\u1ea3ng \u0111\u1ec3 l\u01b0u tr\u1eef d\u1eef li\u1ec7u.<\/li>\n<li>MongoDB: MongoDB l\u00e0 m\u1ed9t c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL s\u1eed d\u1ee5ng c\u1ea5u tr\u00fac gi\u1ed1ng JSON \u0111\u1ec3 l\u01b0u tr\u1eef c\u00e1c ph\u1ea7n t\u1eed d\u1eef li\u1ec7u. \u0110\u1ec3 s\u1eeda \u0111\u1ed5i v\u00e0 truy c\u1eadp d\u1eef li\u1ec7u trong MongoDB, l\u1eadp tr\u00ecnh vi\u00ean ph\u1ea3i s\u1eed d\u1ee5ng Ng\u00f4n ng\u1eef truy v\u1ea5n MongoDB (MQL).<\/li>\n<\/ul>\n<h3 class=\"wp-block-heading\" id=\"h-b\u1ea1n-bi\u1ebft-gi-v\u1ec1-css-image-sprites-va-t\u1ea1i-sao-no-d\u01b0\u1ee3c-s\u1eed-d\u1ee5ng\"><span class=\"ez-toc-section\" id=\"ban_biet_gi_ve_css_image_sprites_va_tai_sao_no_duoc_su_dung\"><\/span><strong>B\u1ea1n bi\u1ebft g\u00ec v\u1ec1 CSS image sprites v\u00e0 t\u1ea1i sao n\u00f3 \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>CSS image sprites h\u1ed7 tr\u1ee3 hi\u1ec3n th\u1ecb nhi\u1ec1u h\u00ecnh \u1ea3nh trong m\u1ed9t h\u00ecnh \u1ea3nh d\u00f2ng duy nh\u1ea5t. T\u00f3m l\u1ea1i, CSS sprites h\u1ee3p nh\u1ea5t nhi\u1ec1u \u1ea3nh th\u00e0nh m\u1ed9t \u1ea3nh l\u1edbn duy nh\u1ea5t. N\u1ebfu m\u1ed9t trang web bao g\u1ed3m c\u00e1c h\u00ecnh \u1ea3nh kh\u00e1c nhau, th\u00ec n\u00f3 s\u1ebd t\u0103ng th\u1eddi gian t\u1ea3i v\u00ec v\u1edbi m\u1ed7i h\u00ecnh \u1ea3nh tr\u00ecnh duy\u1ec7t ph\u1ea3i g\u1eedi m\u1ed9t y\u00eau c\u1ea7u HTTP ri\u00eang bi\u1ec7t. Nh\u01b0ng v\u1edbi s\u1ef1 tr\u1ee3 gi\u00fap c\u1ee7a sprites, b\u1ea1n ch\u1ec9 c\u00f3 m\u1ed9t h\u00ecnh \u1ea3nh duy nh\u1ea5t \u0111\u1ec3 y\u00eau c\u1ea7u.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-d\u1ec1-xu\u1ea5t-cach-b\u1ea1n-co-th\u1ec3-t\u1ed1i-\u01b0u-hoa-trang-giao-di\u1ec7n-ng\u01b0\u1eddi-dung-c\u1ee7a-minh\"><span class=\"ez-toc-section\" id=\"de_xuat_cach_ban_co_the_toi_uu_hoa_trang_giao_dien_nguoi_dung_cua_minh\"><\/span><strong>\u0110\u1ec1 xu\u1ea5t c\u00e1ch b\u1ea1n c\u00f3 th\u1ec3 t\u1ed1i \u01b0u h\u00f3a trang giao di\u1ec7n ng\u01b0\u1eddi d\u00f9ng c\u1ee7a m\u00ecnh<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li>C\u00e1c trang c\u00f3 th\u1ec3 gi\u1ea3m m\u1ee9c ti\u00eau th\u1ee5 t\u00e0i nguy\u00ean b\u1eb1ng c\u00e1ch t\u0103ng c\u01b0\u1eddng ph\u1ea3n h\u1ed3i c\u1ee7a m\u00e1y ch\u1ee7.<\/li>\n<li>S\u1eed d\u1ee5ng JavaScript v\u00e0 CSS b\u00ean ngo\u00e0i thay v\u00ec n\u1ed9i b\u1ed9 ho\u1eb7c n\u1ed9i d\u00f2ng.<\/li>\n<li>S\u1eed d\u1ee5ng khu\u00f4n kh\u1ed5 \u0111\u1ec3 \u0111\u1ea3m b\u1ea3o giao di\u1ec7n ng\u01b0\u1eddi d\u00f9ng tr\u1edf n\u00ean ph\u1ea3n h\u1ed3i nhanh h\u01a1n v\u1edbi c\u00e1c thi\u1ebft b\u1ecb kh\u00e1c nhau.<\/li>\n<li>Th\u01b0 vi\u1ec7n m\u00e3 ngu\u1ed3n m\u1edf c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng \u0111\u1ec3 qu\u1ea3n l\u00fd v\u1ea5n \u0111\u1ec1 t\u1ea1o ki\u1ec3u c\u1ee5 th\u1ec3 cho tr\u00ecnh duy\u1ec7t.<\/li>\n<li>S\u1eed d\u1ee5ng t\u00ednh n\u0103ng t\u1ea3i li\u00ean t\u1ee5c nh\u01b0 Lazy Loading \u0111\u1ec3 n\u00e2ng cao kh\u1ea3 n\u0103ng hi\u1ec3n th\u1ecb c\u00e1c y\u1ebfu t\u1ed1 n\u1eb7ng, nh\u01b0 video v\u00e0 h\u00ecnh \u1ea3nh.<\/li>\n<li>K\u1ebft n\u1ed1i bi\u1ec3u \u0111\u1ecbnh ki\u1ec3u trong ti\u00eau \u0111\u1ec1 v\u00e0 t\u1eadp l\u1ec7nh \u1edf \u0111\u1ea7u th\u1ebb n\u1ed9i dung c\u1ee7a HTML.<\/li>\n<li>S\u1eed d\u1ee5ng b\u1ed9 nh\u1edb c\u1ee7a tr\u00ecnh duy\u1ec7t \u0111\u1ec3 gi\u1eef d\u1eef li\u1ec7u ri\u00eang t\u01b0 c\u1ee7a ng\u01b0\u1eddi d\u00f9ng c\u1ee5 th\u1ec3.<\/li>\n<\/ul>\n<h3 class=\"wp-block-heading\" id=\"h-gi\u1ea3i-thich-prototype-design-pattern\"><span class=\"ez-toc-section\" id=\"giai_thich_prototype_design_pattern\"><\/span><strong>Gi\u1ea3i th\u00edch Prototype Design Pattern<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Prototype Design Pattern t\u1ea1o ra c\u00e1c \u0111\u1ed1i t\u01b0\u1ee3ng m\u1edbi. Nh\u01b0ng thay v\u00ec t\u1ea1o c\u00e1c \u0111\u1ed1i t\u01b0\u1ee3ng kh\u00f4ng \u0111\u01b0\u1ee3c kh\u1edfi t\u1ea1o, n\u00f3 tr\u1ea3 v\u1ec1 c\u00e1c \u0111\u1ed1i t\u01b0\u1ee3ng \u0111\u01b0\u1ee3c kh\u1edfi t\u1ea1o v\u1edbi c\u00e1c gi\u00e1 tr\u1ecb \u0111\u01b0\u1ee3c sao ch\u00e9p t\u1eeb m\u1ed9t \u0111\u1ed1i t\u01b0\u1ee3ng nguy\u00ean m\u1eabu.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-chinh-sach-b\u1ea3o-m\u1eadt-n\u1ed9i-dung-la-gi\"><span class=\"ez-toc-section\" id=\"chinh_sach_bao_mat_noi_dung_la_gi\"><\/span><strong>Ch\u00ednh s\u00e1ch b\u1ea3o m\u1eadt n\u1ed9i dung l\u00e0 g\u00ec?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img decoding=\"async\" src=\"\/\/www.w3.org\/2000\/svg'%20viewBox='0%200%20500%200'%3E%3C\/svg%3E\" alt=\"c\u00e2u h\u1ecfi ph\u1ecfng v\u1ea5n front end\" class=\"wp-image-23235\" width=\"500\" data-lazy-srcset=\"https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/CSP-la\u0300-mo\u0323\u0302t-ca\u0302u-ho\u0309i-pho\u0309ng-va\u0302\u0301n-frontend-thu\u031bo\u031b\u0300ng-tha\u0302\u0301y-1024x1024.jpg 1024w, https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/CSP-la\u0300-mo\u0323\u0302t-ca\u0302u-ho\u0309i-pho\u0309ng-va\u0302\u0301n-frontend-thu\u031bo\u031b\u0300ng-tha\u0302\u0301y-300x300.jpg 300w, https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/CSP-la\u0300-mo\u0323\u0302t-ca\u0302u-ho\u0309i-pho\u0309ng-va\u0302\u0301n-frontend-thu\u031bo\u031b\u0300ng-tha\u0302\u0301y-500x500.jpg 500w, https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/CSP-la\u0300-mo\u0323\u0302t-ca\u0302u-ho\u0309i-pho\u0309ng-va\u0302\u0301n-frontend-thu\u031bo\u031b\u0300ng-tha\u0302\u0301y-768x768.jpg 768w, https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/CSP-la\u0300-mo\u0323\u0302t-ca\u0302u-ho\u0309i-pho\u0309ng-va\u0302\u0301n-frontend-thu\u031bo\u031b\u0300ng-tha\u0302\u0301y-1536x1536.jpg 1536w, https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/CSP-la\u0300-mo\u0323\u0302t-ca\u0302u-ho\u0309i-pho\u0309ng-va\u0302\u0301n-frontend-thu\u031bo\u031b\u0300ng-tha\u0302\u0301y.jpg 2000w\" data-lazy-sizes=\"(max-width: 1024px) 100vw, 1024px\" data-lazy-src=\"https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/CSP-la\u0300-mo\u0323\u0302t-ca\u0302u-ho\u0309i-pho\u0309ng-va\u0302\u0301n-frontend-thu\u031bo\u031b\u0300ng-tha\u0302\u0301y-1024x1024.jpg\"><img decoding=\"async\" src=\"https:\/\/Ch%C3%BAng%20t%C3%B4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/CSP-la%CC%80-mo%CC%A3%CC%82t-ca%CC%82u-ho%CC%89i-pho%CC%89ng-va%CC%82%CC%81n-frontend-thu%CC%9Bo%CC%9B%CC%80ng-tha%CC%82%CC%81y-1024x1024.jpg\" alt=\"c\u00e2u h\u1ecfi ph\u1ecfng v\u1ea5n front end\" class=\"wp-image-23235\" width=\"500\"><\/figure>\n<\/div>\n<p>Ch\u00ednh s\u00e1ch b\u1ea3o m\u1eadt n\u1ed9i dung (CSP) l\u00e0 m\u1ed9t ti\u00eau \u0111\u1ec1 HTTP cho ph\u00e9p ng\u01b0\u1eddi v\u1eadn h\u00e0nh gi\u00e1m s\u00e1t v\u00e0 ki\u1ec3m so\u00e1t n\u01a1i t\u00e0i nguy\u00ean c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c t\u1ea3i l\u00ean trang web c\u1ee7a h\u1ecd. S\u1eed d\u1ee5ng ti\u00eau \u0111\u1ec1 n\u00e0y l\u00e0 m\u1ed9t trong nh\u1eefng c\u00e1ch t\u1ed1t nh\u1ea5t \u0111\u1ec3 ng\u0103n ch\u1eb7n c\u00e1c l\u1ed7 h\u1ed5ng cross-site scripting (XSS). V\u00ec c\u00f3 nh\u1eefng kh\u00f3 kh\u0103n khi trang b\u1ecb th\u00eam CSP tr\u00ean t\u1ea5t c\u1ea3 c\u00e1c trang web hi\u1ec7n c\u00f3, n\u00ean CSP l\u00e0 b\u1eaft bu\u1ed9c \u0111\u1ed1i v\u1edbi t\u1ea5t c\u1ea3 c\u00e1c trang web m\u1edbi. C\u00e1c Frontend chuy\u00ean nghi\u1ec7p \u0111\u1eb7c bi\u1ec7t khuy\u1ebfn kh\u00edch tri\u1ec3n khai CSP tr\u00ean t\u1ea5t c\u1ea3 c\u00e1c trang web c\u00f3 nguy c\u01a1 cao.<\/p>\n<p>L\u1ee3i \u00edch l\u1edbn nh\u1ea5t c\u1ee7a CSP l\u00e0 v\u00f4 hi\u1ec7u h\u00f3a vi\u1ec7c s\u1eed d\u1ee5ng JavaScript n\u1ed9i tuy\u1ebfn kh\u00f4ng an to\u00e0n. JavaScript n\u1ed9i tuy\u1ebfn c\u00f3 ngh\u0129a l\u00e0 d\u1eef li\u1ec7u m\u00e0 ng\u01b0\u1eddi d\u00f9ng nh\u1eadp sai tr\u00ean trang web c\u00f3 th\u1ec3 t\u1ea1o ra m\u00e3 s\u1ebd \u0111\u01b0\u1ee3c tr\u00ecnh duy\u1ec7t hi\u1ec3u nh\u01b0 JavaScript. B\u1eb1ng c\u00e1ch s\u1eed d\u1ee5ng CSP \u0111\u1ec3 t\u1eaft JavaScript n\u1ed9i tuy\u1ebfn, b\u1ea1n c\u00f3 th\u1ec3 lo\u1ea1i b\u1ecf h\u1ea7u h\u1ebft c\u00e1c cu\u1ed9c t\u1ea5n c\u00f4ng XSS ch\u1ed1ng l\u1ea1i trang web c\u1ee7a m\u00ecnh m\u1ed9t c\u00e1ch hi\u1ec7u qu\u1ea3.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-khi-nao-b\u1ea1n-s\u1eed-d\u1ee5ng-angularjs-va-jquery\"><span class=\"ez-toc-section\" id=\"khi_nao_ban_su_dung_angularjs_va_jquery\"><\/span><strong>Khi n\u00e0o b\u1ea1n s\u1eed d\u1ee5ng AngularJS v\u00e0 jQuery?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>jQuery l\u00e0 c\u00f4ng c\u1ee5 duy nh\u1ea5t c\u00f3 th\u1ec3 gi\u1ea3i quy\u1ebft m\u1ed9t v\u1ea5n \u0111\u1ec1 c\u1ee5 th\u1ec3 nh\u01b0 thao t\u00e1c dom, trong khi AngularJS l\u00e0 m\u1ed9t khung web ho\u00e0n ch\u1ec9nh bao g\u1ed3m c\u00e1c lo\u1ea1i c\u00f4ng c\u1ee5 kh\u00e1c nhau \u0111\u1ec3 gi\u1ea3i quy\u1ebft c\u00e1c v\u1ea5n \u0111\u1ec1 kh\u00e1c nhau nh\u01b0 \u0111\u1ecbnh tuy\u1ebfn, r\u00e0ng bu\u1ed9c m\u00f4 h\u00ecnh, thao t\u00e1c dom, v.v. JqLite (m\u1ed9t t\u1eadp con c\u1ee7a jQuery ) l\u00e0 m\u1ed9t ph\u1ea7n c\u1ee7a AngularJS v\u00e0 b\u1ea1n s\u1eed d\u1ee5ng n\u00f3 \u0111\u1ec3 gi\u1ea3i quy\u1ebft v\u1ea5n \u0111\u1ec1 thao t\u00fang dom.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-clickjacking-la-gi\"><span class=\"ez-toc-section\" id=\"clickjacking_la_gi\"><\/span><strong>ClickJacking l\u00e0 g\u00ec?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img decoding=\"async\" src=\"\/\/www.w3.org\/2000\/svg'%20viewBox='0%200%20500%200'%3E%3C\/svg%3E\" alt=\"clickjacking\" class=\"wp-image-23233\" width=\"500\" data-lazy-srcset=\"https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/ClickJacking-1024x683.jpg 1024w, https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/ClickJacking-300x200.jpg 300w, https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/ClickJacking-768x512.jpg 768w, https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/ClickJacking-1536x1024.jpg 1536w, https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/ClickJacking-2048x1365.jpg 2048w\" data-lazy-sizes=\"(max-width: 1024px) 100vw, 1024px\" data-lazy-src=\"https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/ClickJacking-1024x683.jpg\"><img decoding=\"async\" src=\"https:\/\/Ch%C3%BAng%20t%C3%B4i.com\/vn\/blog\/wp-content\/uploads\/2022\/11\/ClickJacking-1024x683.jpg\" alt=\"clickjacking\" class=\"wp-image-23233\" width=\"500\"><\/figure>\n<\/div>\n<p>ClickJacking l\u00e0 m\u1ed9t k\u1ef9 thu\u1eadt \u0111\u1ed9c h\u1ea1i \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng \u0111\u1ec3 l\u1eeba ng\u01b0\u1eddi d\u00f9ng nh\u1ea5p v\u00e0o m\u1ed9t ph\u1ea7n t\u1eed nh\u1ea5t \u0111\u1ecbnh m\u00e0 tr\u00ean th\u1ef1c t\u1ebf kh\u00e1c v\u1edbi ph\u1ea7n t\u1eed \u0111\u01b0\u1ee3c hi\u1ec3n th\u1ecb cho ng\u01b0\u1eddi d\u00f9ng. ClickJacking \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng \u0111\u1ec3 l\u1ea5y th\u00f4ng tin c\u00e1 nh\u00e2n m\u1ed9t c\u00e1ch b\u1ea5t h\u1ee3p ph\u00e1p ho\u1eb7c chi\u1ebfm quy\u1ec1n ki\u1ec3m so\u00e1t thi\u1ebft b\u1ecb c\u1ee7a ai \u0111\u00f3.<\/p>\n<p class=\"has-background\" style=\"background-color:#f1f1f1\"><strong>\u0110\u1ecdc th\u00eam<\/strong>: M\u1ee9c L\u01b0\u01a1ng Front End\/ Back End Developer L\u00e0 Bao Nhi\u00eau?<\/p>\n<p><strong>L\u1eddi k\u1ebft<\/strong><\/p>\n<p>V\u1eady l\u00e0 Ch\u00fang t\u00f4i \u0111\u00e3 c\u00f9ng b\u1ea1n t\u00ecm hi\u1ec3u kh\u00e1i qu\u00e1t v\u1ec1 c\u00e1c <strong>c\u00e2u h\u1ecfi ph\u1ecfng v\u1ea5n Frontend<\/strong> th\u01b0\u1eddng d\u00f9ng c\u0169ng nh\u01b0 m\u1ed9t v\u00e0i g\u1ee3i \u00fd c\u01a1 b\u1ea3n gi\u00fap b\u1ea1n tr\u1ea3 l\u1eddi ch\u00fang. Hy v\u1ecdng nh\u1eefng th\u00f4ng tin tr\u00ean s\u1ebd gi\u00fap b\u1ea1n c\u00f3 \u0111\u01b0\u1ee3c s\u1ef1 chu\u1ea9n b\u1ecb chu \u0111\u00e1o nh\u1ea5t tr\u01b0\u1edbc c\u00e1c v\u00f2ng ph\u1ecfng v\u1ea5n trong t\u01b0\u01a1ng lai. N\u1ebfu c\u00f3 h\u1ee9ng th\u00fa v\u1edbi c\u00e1c ch\u1ee7 \u0111\u1ec1 t\u01b0\u01a1ng t\u1ef1, h\u00e3y c\u00f9ng \u0111\u00f3n ch\u1edd th\u00eam nhi\u1ec1u b\u00e0i vi\u1ebft h\u1ea5p d\u1eabn kh\u00e1c \u0111\u1ebfn t\u1eeb Ch\u00fang t\u00f4i b\u1ea1n nh\u00e9!<\/p>\n<p><!-- Rate my Post Plugin --><\/p>\n<div class=\"rmp-widgets-container rmp-wp-plugin rmp-main-container js-rmp-widgets-container js-rmp-widgets-container--23143\" data-post-id=\"23143\">    <!-- Rating widget -->    <!--Structured data -->          <!-- Feedback widget -->        <\/div>\n<div class=\"wp-post-author-wrap wp-post-author-shortcode  left\">\n<div class=\"awpa-tab-content active\" id=\"31_awpa-tab1\"><\/div>\n<\/p><\/div>\n<p>                <!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><\/p>\n<div class=\"at-below-post addthis_tool\" data-url=\"https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/cac-cau-hoi-phong-van-frontend\/\"><\/div>\n<p><!-- AddThis Share Buttons generic via filter on the_content --><!-- AddThis Related Posts below via filter on the_content --><\/p>\n<div class=\"at-below-post-recommended addthis_tool\"><\/div>\n<p><!-- AddThis Related Posts generic via filter on the_content --><\/p>\n<div class=\"glint-sau-noi-dung\" style=\"margin-left: auto;margin-right: auto;text-align: center;margin-top: 20px\" id=\"glint-1167233851\"><img fetchpriority=\"high\" decoding=\"async\" src=\"\/\/www.w3.org\/2000\/svg'%20viewBox='0%200%20800%20366'%3E%3C\/svg%3E\" alt=\"t\u1ea3i m\u1eabu cv file word\" data-lazy-srcset=\"https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/05\/banner-tai-mau-cv-word-Ch\u00fang t\u00f4i.webp 800w, https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/05\/banner-tai-mau-cv-word-Ch\u00fang t\u00f4i-300x137.webp 300w, https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/05\/banner-tai-mau-cv-word-Ch\u00fang t\u00f4i-768x351.webp 768w\" data-lazy-sizes=\"(max-width: 800px) 100vw, 800px\" width=\"800\" height=\"366\" data-lazy-src=\"https:\/\/Ch\u00fang t\u00f4i.com\/vn\/blog\/wp-content\/uploads\/2022\/05\/banner-tai-mau-cv-word-Ch\u00fang t\u00f4i.webp\"><img decoding=\"async\" src=\"https:\/\/Ch%C3%BAng%20t%C3%B4i.com\/vn\/blog\/wp-content\/uploads\/2022\/05\/banner-tai-mau-cv-word-Ch%C3%BAng%20t%C3%B4i.webp\" alt=\"t\u1ea3i m\u1eabu cv file word\" width=\"800\" height=\"366\"><\/div>\n<p><!-- AI CONTENT END 2 -->\n            <\/div>","protected":false},"excerpt":{"rendered":"<p>Ng\u00e0y nay, nhu c\u1ea7u cho c\u00e1c v\u1ecb tr\u00ed Frontend ng\u00e0y c\u00e0ng cao. R\u1ea5t nhi\u1ec1u c\u00f4ng ty s\u1eb5n s\u00e0ng tuy\u1ec3n d\u1ee5ng h\u1ecd v\u1edbi m\u1ee9c l\u01b0\u01a1ng h\u1ea5p d\u1eabn. N\u1ebfu b\u1ea1n tin r\u1eb1ng m\u00ecnh c\u00f3 c\u00e1c k\u1ef9 n\u0103ng \u0111\u1ec3 tr\u1edf th\u00e0nh nh\u00e0 ph\u00e1t tri\u1ec3n Frontend v\u00e0 mong mu\u1ed1n t\u1ea1o d\u1ef1ng s\u1ef1 nghi\u1ec7p trong \u0111\u00f3, th\u00ec b\u1ea1n \u0111\u00e3 \u0111\u1ebfn [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":6897,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[30],"tags":[],"class_list":["post-5022","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cong-nghe"],"_links":{"self":[{"href":"https:\/\/mhgvietnam.com\/en\/wp-json\/wp\/v2\/posts\/5022","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mhgvietnam.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mhgvietnam.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mhgvietnam.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mhgvietnam.com\/en\/wp-json\/wp\/v2\/comments?post=5022"}],"version-history":[{"count":1,"href":"https:\/\/mhgvietnam.com\/en\/wp-json\/wp\/v2\/posts\/5022\/revisions"}],"predecessor-version":[{"id":6898,"href":"https:\/\/mhgvietnam.com\/en\/wp-json\/wp\/v2\/posts\/5022\/revisions\/6898"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mhgvietnam.com\/en\/wp-json\/wp\/v2\/media\/6897"}],"wp:attachment":[{"href":"https:\/\/mhgvietnam.com\/en\/wp-json\/wp\/v2\/media?parent=5022"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mhgvietnam.com\/en\/wp-json\/wp\/v2\/categories?post=5022"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mhgvietnam.com\/en\/wp-json\/wp\/v2\/tags?post=5022"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}