zl程序教程

您现在的位置是:首页 >  后端

当前栏目

Java Web 开发中一些实用的技术点

JAVA技术Web开发 实用 一些
2023-06-13 09:11:39 时间

1. Java Integer 的缓存:-128 to 127

1Integer.valueOf(10) == Integer.valueOf(10); // true
2Integer.valueOf(128) == Integer.valueOf(128); // false

2. Java 中的小数运算,2-1.1=?

我们知道,2-1.1=0.9,但是在 java 中如果直接这样运算,会得到一个意外的结果。一般可以用 java.math.BigDecimal 来解决这类问题,但如果不想写太多代码,还有一种比较简单方便的解决方式,直接在小数后面添加一个 f

1System.out.println(2-1.1); // 0.8999999999999999
2System.out.println(2-1.1f); // 0.9

3. JS 中,删除一个数组,应该使用 arr.length = 0,而不是 delete a

1var arr = [1,2,3,4];
2console.log(arr);
3arr.length = 0;
4console.log(arr);

4. JS 关闭当前页面

1function close() {
2  window.opener=null;
3  window.open('','_self');
4  window.close();
5}

5. JS 中,将数字字符串转换成数字,使用 parseInt 时注意不要忘了传第二个参数,否则可能会出现一些问题

1parseInt("42")         //=> 42
2parseInt("042")        //=> 34 (Firefox) || 42 (Chrome)
3parseInt("09")         //=> NaN (Firefox) || 9 (Chrome)
4parseInt("the 42")     //=> NaN
5parseInt("42px")       //=> 42  <- Advantage of using parseInt
6parseInt("09", 10)     //=> 返回十进制的 9

当第二个参数的值为 0,或没有设置该参数时,parseInt() 会根据 string 来判断数字的基数。 举例,如果 string 以 "0x" 开头,parseInt() 会把 string 的其余部分解析为十六进制的整数。如果 string 以 0 开头,那么 ECMAScript v3 允许 parseInt() 的一个实现把其后的字符解析为八进制或十六进制的数字。如果 string 以 1 ~ 9 的数字开头,parseInt() 将把它解析为十进制的整数。

6. opacity < 1 的元素会显示在最上层,所以有的时候使用 opacity: .99; 可以方便的解决很多问题

1.top {
2  opacity: .99;
3}

7. CSS 中,position:absolute, relative; 元素会晚于正常文档流元素的渲染,所以显示的层级会比较高

1a:hover {
2  position: relative;
3}

8. JS 中,为 String 对象添加实用属性方法

 1// 判断字符串是否为空
 2String.prototype.isEmpty = function() { return /^\s*$/.test(this); }
 3
 4// 删除字符串两边的空格
 5String.prototype.trim = function() { return this.replace(/(^\s*)|(\s*$)/g,""); }
 6
 7// 删除字符串左边的空格
 8String.prototype.ltrim = function() { return this.replace(/(^\s*)/g,""); }
 9
10// 删除字符串右边的空格
11String.prototype.rtrim = function() { return this.replace(/(\s*$)/g,""); }

9. JS 获取 URL 参数值

10. JS 中使用倒序 for 循环实现高效遍历

1var arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
2// 高效倒序遍历,若要正序可先用 reverse 方法对数组进行反转再遍历
3for (var i = arr.length; i--; ) {  
4  // 依次打印 9 8 7 6 5 4 3 2 1 0
5  console.log(arr[i])
6}

11. JS 中使用 charCodeAtfromCharCode 实现字符串的简单加解密

 1// 编码
 2var enUnicode = function(s) {
 3  for (var arr = [], i = s.length; i--; ) {
 4    arr.push(s.charCodeAt(i));
 5  }
 6  // 可将 D 改为其他字符
 7  return arr.join('D');
 8}
 9
10// 解码
11var deUnicode = function(s) {
12  for (var arr = [], code = s.split('D'), i = code.length; i--; ) {
13    arr.push(String.fromCharCode(code[i]));
14  }
15  return arr.join('');
16}
17
18// 使用示例
19enUnicode('123123');
20// > "51D50D49D51D50D49"
21
22deUnicode("51D50D49D51D50D49");
23// > "123123"

12. 自定义 WebKit 内核浏览器滚动条样式

持续更新中...


内容声明

标题: Java Web 开发中一些实用的技术点

链接: https://zixizixi.cn/articles/2017/01/04/1483519918704.html

来源: iTanken

本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可,转载请保留此声明。


我的博客即将同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=wh4u6zpyhe1d