这些地方得注意了


前言

细节之处是我们大家最容易忽视的,将这些细节注意到位了,能帮助我们更好的写出安全、高效的代码。

一、后端

Java finally关键字

finally常与try/catch搭配着使用,其作用是保证finally代码块中的代码一定会被执行到。像对文件I/O、获取数据库连接等,都会使用finally来保证资源会被释放。但是异常处在这种位置finally会失效
在这里插入图片描述
除此之外,return和finally都存在的时候,返回值被覆盖
在这里插入图片描述
还有一种异常和return结合的情况也很特殊。
在这里插入图片描述

Mybatis查询没有数据返回结果List时,List是Null还是list.size=0?

结果:返回的list.size = 0

Java自动拆箱的注意点

public class Main {
    public static void main(String[] args) {
     //自动装箱
     Integer i = 8;
    //自定拆箱
     int r = i;
    }
 }

上述过程,反编译代码后会看到,有个步骤:
装箱
Integer i = Integer.valueOf(8);
拆箱
int r = i.intValue();

注意点就是如果 Integer i = null; 自动拆箱时就会报空指针异常。

二、前端

innerText和innerHtml

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="../../js/jquery.min.js" type="text/javascript"></script>
</head>
<body>
    <p id="flag">love & you</p>
</body>

<script type="text/javascript">

    $(function () {
        var value=document.getElementById('flag').innerText;
        alert(value);
    });

</script>

</html>
	首先,我们使用innerText获取内容

在这里插入图片描述

	然后,我们使用innerHTML获取内容

在这里插入图片描述
结果反应出,innerText会将&当作文本看待;innerHTML会将&当作html语句看待。

html()和append()

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="../../js/jquery.min.js" type="text/javascript"></script>
</head>
<body>
    <p id="flag">love</p>
</body>

<script type="text/javascript">

    $(function () {
        $('#flag').append(' you')
    });

</script>

</html>
首先,使用append()函数往p标签中间添加 'you'

在这里插入图片描述

 然后,使用html()函数往p标签中间添加 'you'

在这里插入图片描述
通过上面结果,结论显而易见

return关键字

js在遍历数组时可以用到forEachfor,如果在它们的循环体中使用return关键字,最终的效果是不太一样的。
在这里插入图片描述

在这里插入图片描述

这里return并没有结束整个方法,而是跳出了整个循环,类似break

解决方案: 换成for循环就可以结束整个方法。
在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值