1.捕获js自身异常
js中的6大错误:
1. SyntaxError:语法错误 2. Uncaught ReferenceError:引用错误 3. RangeError:范围错误 4. TypeError类型错误 5. URIError,URL错误 6. EvalError eval()函数执行错误
以上错误均属于原始的Error对象派生错误
Error对象常见属性(不同浏览器属性不一样,比较坑):
message —— 错误提示信息
fileName —— 表示出错代码所在文件
lineNumber —— 出错代码所在行数
初始化Error对象
new Error([message[,fileName[,lineNumber]]]),
第一个参数表示错误提示信息,第二个是文件名,第三个是行号。
代码示例:
<script> try { let a = null; console.log(a[1]) } catch (err) { console.log('err_name:' + err.name); console.log('err_value:' + err.value); } </script>
手动抛出异常使用throw new Error()即可,捕获异常使用catch即可,finally中的代码无论如何都会执行
<script> try { throw new Error('老婆我错了'); } catch (err) { console.log(err); console.log(err.message); } finally { console.log('无论怎么样我都要执行,谁都拦不住,我说的!') } </script>
TmodJS是一套完整的前端模块框架。 虽然我们PHP框架自带各种模板引擎,但是始终是后端模板引擎。例如我们在使用ThinkPHP3.2.3中如果是Ajax异步加载页面,拼接HTML真的是很头疼的一件事情。...
<form action="save.php" method="post" target="nm_iframe"> &nbs...
维护老项目中客户提到一个页面中有6个表单以上,导致每次保存一个其他的数据全部丢失,自己比较懒没有全部更换为ajax.用户每次输入完成或者选择完成记录cookie,每次提交后加载页面完成初始化cookie即可。以下代码取自w3school比较完善,之前在其他博客使用的经常出现bug,这个比较推荐使用:...
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>录制</title> <script ...
rem原理和简介(1).字体单位单位的值是根据html根元素大小而定,同样可以作为宽度高度单位(2).适配原理将px替换为rem,动态修改html的font-size适配(3).单位1rem=16px,why? F12中1rem在computed中font-size属性中会显示为font-size:...
var的作用域是全局的,let的作用域是块级的,直接看代码(其他的小区别忽略):<script type="text/javascript"> for (var a = ...