1、如何查找表格:
URL:
/getReportTable/report_dws_wdtb_citygrid_od_msk_d.do?typechart=1&fieldNameEN=requestType1,requestType2,dts&fieldVal=1,dws_wdtb_citygrid_od_msk_d,20190320-20190320
针对于当前接口:report_dws_wdtb_citygrid_od_msk_d.do
,通过requestType1
找到:t 的值
//请求的接口数组
var reqs = {
'dws_wdtb_citygrid_od_msk_d': {//key: 图表请求 value: requesttype1
'report_dws_wdtb_citygrid_od_msk_d.do': {1: '1', 3: '3', 5: '5'},//requestype1 图表
'report_dws_wdtb_citygrid_od_msk_d_new.do': {1: '6', 2: '7', 3: '7', 1.5: '8', 5: '7'}
},
};
2、比较规则:
布尔值和任何值比较,==两边会被转换为数字
对象和除布尔值以外的值比较,对象会被toPrimitive拆封( 使用 toString( ) , valueOf( ) )
3、vue内使用forEach:
forEach会修改原数组以及原数组内的obj,map则是创建副本:
注意:在vue里其他位置想新增对象里的key,必须用this.$set()
才可以
可以直接使用点语法新增数组内的obj的(anncItem)(增加之前anncItem内没有key为selected的情况)
this.anncList.forEach(anncItem => {
if(items.length == 0){
this.$set(anncItem, "selected", false); //不需要这样
anncItem.selected = false
}
4、promise.nextTick( function( xx ){ } )
process.nextTick()方法可以在当前"执行栈"的尾部–>下一次Event Loop(主线程读取"任务队列")之前–>触发process指定的回调函数。也就是说,它指定的任务总是发生在所有异步任务之前,当前主线程的末尾。(nextTick虽然也会异步执行,但是不会给其他io事件执行的任何机会)
执行顺序问题:宏任务微任务
6、form的reset不是清空表单,而是回到上一次载入页面时的状态:
7、往后台传送文件,不直接使用blob:
方法:通过HTML內的input标签,再配合formData
var file_obj = document.getElementById("avatar").files[0]
var url = "/upload_file";
var formData= new FormData();
formData.append("file", file_obj);
formData.append("username", "Groucho");
formData.append("accountnum", 123456); //数字123456会被立即转换成字符串 "123456"
8、在数据测试的时候,要判断三种情况:
①正确数据
②错误数据
③边界数据
9、如何拿到十位数字?
Math.floor( i / 10 ) % 10
356 / 10 = 35.6
35.6 % 10 = 5.6
10、月份和时间下拉菜单Options选项
需求:月份、日期选择下拉菜单:
解决方案:Object.keys(Array.from({length:24})).map(item=>{return {label:item+'',value:item}})
备注:Object.keys参数传入数组是可以拿到数组的所有索引