<\/span><\/h2>\n\n\n\nKhi l\u1ed7i xu\u1ea5t hi\u1ec7n, JavaScript s\u1ebd kh\u00f4ng d\u1eebng nh\u01b0 b\u00ecnh th\u01b0\u1eddng \u0111\u01b0\u1ee3c v\u00e0 t\u1ea1o ra m\u1ed9t th\u00f4ng b\u00e1o l\u1ed7i.<\/p>\n\n\n\n
Thu\u1eadt ng\u1eef k\u1ef9 thu\u1eadt cho n\u00f3 l\u00e0: JavaScript s\u1ebd n\u00e9m ra m\u1ed9t ngo\u1ea1i l\u1ec7<\/strong>.<\/p>\n\n\n\n
\n\n\n\n<\/span>C\u00e2u l\u1ec7nh n\u00e9m<\/span><\/h2>\n\n\n\nC\u00e2u l\u1ec7nh throw<\/strong> cho ph\u00e9p b\u1ea1n t\u1ea1o ra m\u1ed9t l\u1ed7i tu\u1ef3 ch\u1ec9nh.<\/p>\n\n\n\nThu\u1eadt ng\u1eef k\u1ef9 thu\u1eadt l\u00e0 b\u1ea1n n\u00e9m ra m\u1ed9t ngo\u1ea1i l\u1ec7<\/strong>.<\/p>\n\n\n\nM\u1ed9t ngo\u1ea1i l\u1ec7 c\u00f3 th\u1ec3 l\u00e0 chu\u1ed7i JavaScript, m\u1ed9t s\u1ed1, m\u1ed9t Boolean ho\u1eb7c m\u1ed9t \u0110\u1ed1i t\u01b0\u1ee3ng:<\/p>\n\n\n\n
throw \"Qu\u00e1 l\u1edbn\"; \/\/ n\u00e9m ra m\u1ed9t v\u0103n b\u1ea3n\nthrow 500; \/\/ n\u00e9m ra m\u1ed9t s\u1ed1<\/code><\/pre>\n\n\n\nN\u1ebfu b\u1ea1n s\u1eed d\u1ee5ng throw<\/strong> k\u1ebft h\u1ee3p v\u1edbi try v\u00e0 catch, b\u1ea1n c\u00f3 th\u1ec3 \u0111i\u1ec1u ch\u1ec9nh l\u01b0u l\u01b0\u1ee3ng ch\u01b0\u01a1ng tr\u00ecnh v\u00e0 t\u1ea1o ra c\u00e1c th\u00f4ng b\u00e1o l\u1ed7i tu\u1ef3 ch\u1ec9nh.<\/p>\n\n\n\n
\n\n\n\n<\/span>V\u00ed d\u1ee5 v\u1ec1 x\u00e1c nh\u1eadn th\u00f4ng tin nh\u1eadp v\u00e0o<\/span><\/h2>\n\n\n\nV\u00ed d\u1ee5 n\u00e0y ki\u1ec3m tra \u0111\u1ea7u v\u00e0o. N\u1ebfu gi\u00e1 tr\u1ecb l\u00e0 sai, m\u1ed9t ngo\u1ea1i l\u1ec7 (err) \u0111\u01b0\u1ee3c n\u00e9m ra.<\/p>\n\n\n\n
Ngo\u1ea1i l\u1ec7 (err) \u0111\u01b0\u1ee3c t\u00f3m b\u1edfi l\u1ec7nh catch v\u00e0 m\u1ed9t th\u00f4ng b\u00e1o l\u1ed7i t\u00f9y ch\u1ec9nh \u0111\u01b0\u1ee3c hi\u1ec3n th\u1ecb:<\/p>\n\n\n\n
<!DOCTYPE html>\n <html>\n <body><p>H\u00e3y nh\u1eadp m\u1ed9t s\u1ed1 trong kho\u1ea3ng t\u1eeb 5 \u0111\u1ebfn 10:<\/p><input id=\"demo\" type=\"text\">\n <button type=\"button\" onclick=\"myFunction()\">Ki\u1ec3m tra gi\u00e1 tr\u1ecb nh\u1eadp v\u00e0o<\/button>\n <p id=\"message\"><\/p>\n\n<script>\n function myFunction() {\n var message, x;\n message = document.getElementById(\"message\");\n message.innerHTML = \"\";\n x = document.getElementById(\"demo\").value;\n try {\n if(x == \"\") throw \"r\u1ed7ng\";\n if(isNaN(x)) throw \"kh\u00f4ng ph\u1ea3i l\u00e0 s\u1ed1\";\n x = Number(x);\n if(x < 5) throw \"qu\u00e1 nh\u1ecf\";\n if(x > 10) throw \"qu\u00e1 l\u1edbn\";\n }\n catch(err) {\n message.innerHTML = \"Input is \" + err;\n }\n }\n <\/script>\n\n<\/body>\n<\/html><\/code><\/pre>\n\n\n\n
\n\n\n\n<\/span>HTML Validation<\/span><\/h2>\n\n\n\n\u0110o\u1ea1n code tr\u00ean ch\u1ec9 l\u00e0 v\u00ed d\u1ee5.<\/p>\n\n\n\n
C\u00e1c tr\u00ecnh duy\u1ec7t hi\u1ec7n \u0111\u1ea1i s\u1ebd th\u01b0\u1eddng xuy\u00ean k\u1ebft h\u1ee3p c\u1ea3 JavaScript v\u00e0 HTML \u0111\u1ec3 chu\u1ea9n ho\u00e1, x\u00e1c nh\u1eadn th\u00f4ng tin. S\u1eed d\u1ee5ng c\u00e1c lu\u1eadt x\u00e1c th\u1ef1c c\u00f3 s\u1eb5n \u0111\u01b0\u1ee3c \u0111\u1ecbnh ngh\u0129a trong c\u00e1c thu\u1ed9c t\u00ednh c\u1ee7a HTML:<\/p>\n\n\n\n
<input id=\"demo\" type=\"number\" min=\"5\" max=\"10\" step=\"1\"<\/code><\/pre>\n\n\n\nB\u1ea1n c\u00f3 th\u1ec3 \u0111\u1ecdc th\u00eam v\u1ec1 chu\u1ea9n ho\u00e1 form trong b\u00e0i vi\u1ebft kh\u00e1c c\u1ee7a ch\u00fang t\u00f4i.<\/p>\n\n\n\n
\n\n\n\n<\/span>C\u00e2u l\u1ec7nh finally<\/span><\/h2>\n\n\n\nC\u00e2u l\u1ec7nh finally<\/strong> cho ph\u00e9p b\u1ea1n th\u1ef1c thi code, sau khi try<\/strong> v\u00e0 catch<\/strong>, b\u1ea5t k\u1ec3 k\u1ebft qu\u1ea3 th\u1ebf n\u00e0o:<\/p>\n\n\n\ntry {\nKh\u1ed1i m\u00e3 \u0111\u1ec3 try\n}\n catch(err) {\nKh\u1ed1i m\u00e3 \u0111\u1ec3 x\u1eed l\u00fd l\u1ed7i\n}\n finally {\n Kh\u1ed1i m\u00e3 \u0111\u01b0\u1ee3c th\u1ef1c hi\u1ec7n b\u1ea5t k\u1ec3 k\u1ebft qu\u1ea3 c\u1ee7a try \/ catch\n}<\/code><\/pre>\n\n\n\nV\u00ed d\u1ee5<\/h3>\n\n\n\nfunction myFunction() {\n var message, x;\n message = document.getElementById(\"message\");\n message.innerHTML = \"\";\n x = document.getElementById(\"demo\").value;\n try {\n if(x == \"\") throw \"r\u1ed7ng\";\n if(isNaN(x)) throw \"kh\u00f4ng ph\u1ea3i l\u00e0 s\u1ed1\";\n x = Number(x);\n if(x > 10) throw \"qu\u00e1 l\u1edbn\";\n if(x < 5) throw \"qu\u00e1 nh\u1ecf\";\n }\n catch(err) {\n message.innerHTML = \"Error: \" + err + \".\";\n }\n finally {\n document.getElementById(\"demo\").value = \"\";\n }\n }<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"C\u00e1c c\u00e2u l\u1ec7nh try cho ph\u00e9p b\u1ea1n th\u1eed nghi\u1ec7m m\u1ed9t kh\u1ed1i m\u00e3 l\u1ed7i. C\u00e1c c\u00e2u l\u1ec7nh catch cho ph\u00e9p b\u1ea1n x\u1eed l\u00fd c\u00e1c l\u1ed7i. C\u00e1c c\u00e2u l\u1ec7nh throw cho ph\u00e9p b\u1ea1n t\u1ea1o ra c\u00e1c l\u1ed7i t\u00f9y ch\u1ec9nh. C\u00e1c c\u00e2u l\u1ec7nh finally cho ph\u00e9p b\u1ea1n th\u1ef1c thi m\u00e3, sau khi try v\u00e0 catch, b\u1ea5t k\u1ec3 k\u1ebft …<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[236],"tags":[],"yoast_head":"\n
C\u00e1c l\u1ed7i trong JavaScript - Throw v\u00e0 Try r\u1ed3i Catch • Ki\u1ebfn c\u00e0ng<\/title>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\t\n\t\n\t\n","yoast_head_json":{"title":"C\u00e1c l\u1ed7i trong JavaScript - Throw v\u00e0 Try r\u1ed3i Catch • Ki\u1ebfn c\u00e0ng","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kiencang.net\/cac-loi-trong-javascript-throw-va-try-roi-catch\/","og_locale":"vi_VN","og_type":"article","og_title":"C\u00e1c l\u1ed7i trong JavaScript - Throw v\u00e0 Try r\u1ed3i Catch • Ki\u1ebfn c\u00e0ng","og_description":"C\u00e1c c\u00e2u l\u1ec7nh try cho ph\u00e9p b\u1ea1n th\u1eed nghi\u1ec7m m\u1ed9t kh\u1ed1i m\u00e3 l\u1ed7i. C\u00e1c c\u00e2u l\u1ec7nh catch cho ph\u00e9p b\u1ea1n x\u1eed l\u00fd c\u00e1c l\u1ed7i. C\u00e1c c\u00e2u l\u1ec7nh throw cho ph\u00e9p b\u1ea1n t\u1ea1o ra c\u00e1c l\u1ed7i t\u00f9y ch\u1ec9nh. C\u00e1c c\u00e2u l\u1ec7nh finally cho ph\u00e9p b\u1ea1n th\u1ef1c thi m\u00e3, sau khi try v\u00e0 catch, b\u1ea5t k\u1ec3 k\u1ebft …","og_url":"https:\/\/kiencang.net\/cac-loi-trong-javascript-throw-va-try-roi-catch\/","og_site_name":"Ki\u1ebfn c\u00e0ng","article_author":"https:\/\/www.facebook.com\/anhducnguyen87\/","article_published_time":"2016-07-21T10:00:33+00:00","author":"Nguy\u1ec5n \u0110\u1ee9c Anh","twitter_card":"summary_large_image","twitter_misc":{"\u0110\u01b0\u1ee3c vi\u1ebft b\u1edfi":"Nguy\u1ec5n \u0110\u1ee9c Anh","\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc":"3 ph\u00fat"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/kiencang.net\/cac-loi-trong-javascript-throw-va-try-roi-catch\/","url":"https:\/\/kiencang.net\/cac-loi-trong-javascript-throw-va-try-roi-catch\/","name":"C\u00e1c l\u1ed7i trong JavaScript - Throw v\u00e0 Try r\u1ed3i Catch • Ki\u1ebfn c\u00e0ng","isPartOf":{"@id":"https:\/\/kiencang.net\/#website"},"datePublished":"2016-07-21T10:00:33+00:00","dateModified":"2016-07-21T10:00:33+00:00","author":{"@id":"https:\/\/kiencang.net\/#\/schema\/person\/5e7e1a04d8d1218ad8c421ba43d25c16"},"breadcrumb":{"@id":"https:\/\/kiencang.net\/cac-loi-trong-javascript-throw-va-try-roi-catch\/#breadcrumb"},"inLanguage":"vi","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kiencang.net\/cac-loi-trong-javascript-throw-va-try-roi-catch\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/kiencang.net\/cac-loi-trong-javascript-throw-va-try-roi-catch\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kiencang.net\/"},{"@type":"ListItem","position":2,"name":"C\u00e1c l\u1ed7i trong JavaScript – Throw v\u00e0 Try r\u1ed3i Catch"}]},{"@type":"WebSite","@id":"https:\/\/kiencang.net\/#website","url":"https:\/\/kiencang.net\/","name":"Ki\u1ebfn c\u00e0ng","description":"\u00d4m l\u00fd thuy\u1ebft, h\u00f4n th\u1ef1c h\u00e0nh","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kiencang.net\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"vi"},{"@type":"Person","@id":"https:\/\/kiencang.net\/#\/schema\/person\/5e7e1a04d8d1218ad8c421ba43d25c16","name":"Nguy\u1ec5n \u0110\u1ee9c Anh","image":{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/kiencang.net\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/6d71f9b89393952a8382e30dad26c1ec?s=96&d=monsterid&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/6d71f9b89393952a8382e30dad26c1ec?s=96&d=monsterid&r=g","caption":"Nguy\u1ec5n \u0110\u1ee9c Anh"},"description":"Sinh n\u0103m 1987, t\u1ed1t nghi\u1ec7p Cao \u0111\u1eb3ng th\u1ef1c h\u00e0nh FPT qu\u00e3ng 2014, chuy\u00ean ng\u00e0nh Thi\u1ebft k\u1ebf website. T\u00f4i th\u00edch Content, SEO, Ads, T\u0103ng t\u1ed1c website v\u00e0 Th\u01b0\u01a1ng m\u1ea1i \u0111i\u1ec7n t\u1eed. B\u00ean c\u1ea1nh b\u00e0i t\u1ef1 vi\u1ebft, t\u00f4i c\u0169ng d\u1ecbch nhi\u1ec1u n\u1ed9i dung th\u00fa v\u1ecb c\u1ee7a c\u00e1c t\u00e1c gi\u1ea3 kh\u00e1c nhau. FB c\u00e1 nh\u00e2n: facebook.com\/anhducnguyen87. Email li\u00ean h\u1ec7: guiemailchotoi@gmail.com","sameAs":["https:\/\/www.facebook.com\/anhducnguyen87\/"],"url":"https:\/\/kiencang.net\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/posts\/3343"}],"collection":[{"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/comments?post=3343"}],"version-history":[{"count":0,"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/posts\/3343\/revisions"}],"wp:attachment":[{"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/media?parent=3343"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/categories?post=3343"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/tags?post=3343"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}