前端页面问题

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

1.el表达式:判断是否为空

${smokeBrief.total_cases eq null?"null":smokeBrief.total_cases}
${empty testEventList?"null":testEventList.get(0).start_time}

2.函数对结果取整:截取小数点前的数字

${fn:substringBefore((smokeBrief.total_time/24), ".")}d ${smokeBrief.total_time%24}h

3.标签对结果转换为整数:

<fmt:formatNumber type="number" value="${uiFunctionBrief.pass_rate*uiFunctionBrief.total_cases*(0.01)}" maxFractionDigits="0"/>

4.js获取对象的属性个数:

var person = {  
"name":"lisi",  
"age":18,  
"phone":"13516818652”
};  

Object.getOwnPropertyNames(person).length  
Object.keys(person).length

5.js中将变量转为字符串:

1.value.toString()
2."" + value
3.String(value)

6.for 语句中变量的作用域问题:

for循环语句的花括号不能代表作用域,实际上整个for内部的语句的作用域与for属于同一级作用域。

for (true){
    var color ="blue";
}
alert (color); //blue

因此 ,常见一种JS题目。
for (var i = 0;i<10;i++){
    doSomethiing(i);
}
alert(i); //  10

这里在for执行完后,由于for内部的i与alert 、for处于同一级作用域,因此i=10。
但是对于函数而言,则花括号决定了函数内的语句作用域属于函数内部。

7.js 获取对象的变量属性名的值:

1、不能是变量
var person= {};
person.name= 'jack'
通过"."运算符这种方法"name"不能是一个变量。
2、可以是变量
var person= {};
person[name] = 'bob'
通过“[]”这种方法"name"可以是一个变量。

这样就可以动态的获取js对象的变量属性!

posted @ 2019-08-02 19:23  zlgSmile  阅读(204)  评论(0)    收藏  举报