您的位置:首页 > Web前端 > JavaScript

web前台工作笔记(时间戳、js中clone的使用、js中动态填充数据注意事项、前台查错方法的学习)

2015-12-03 20:56 996 查看
1、和接口连调,发现传过来的时间为时间戳,在前台进行时间格式化。

java的时间戳为13位,php的时间戳为10位。

来自百度知道中的回答(我感觉应该是php的时间戳,java的为13位不需要乘以1000,不得不说时间转换没有问题,但是貌似结果的格式并非如回答中所说):

//第一种
function getLocalTime(nS) {
return new Date(parseInt(nS) * 1000).toLocaleString().replace(/:\d{1,2}$/,' ');
}
alert(getLocalTime(1293072805));
//结果是2010年12月23日 10:53

//第二种
function getLocalTime(nS) {
return new Date(parseInt(nS) * 1000).toLocaleString().substr(0,17)
}
alert(getLocalTime(1293072805));

//第三种  格式为:2010-10-20 10:00:00
function getLocalTime(nS) {
return new Date(parseInt(nS) * 1000).toLocaleString().replace(/年|月/g, "-").replace(/日/g, " ");
}
alert(getLocalTime(1177824835));

我只对第三种做了修改replace(/ \ //g,"-")replace中的/g是将所有符合条件的全部换成后面的参数内容,这个例子即为:/ ——> - 。

2、js中的克隆

var $item = $('#homeworklist .templatel.odd.gradeX').clone();一般循环复用一个布局,加载列表时会用到,但是注意$()中的参数,像我犯的错误:template是一个定义好的display:none的样式,我连同这个样式属性一起克隆了,所以列表总是加载不出来- - - -。

3、令人啼笑皆非的错误:console.log(data),查看接口传过来的数据,结果发现在web控制台有两个object,竟然以为是传过来了两遍data,其实只是打印输出了两遍而已,后面其实给出了哪个地方输出的提示(哪个文件 第多少行),除了我的console以外,还有一个是从一个common.js中输出出来的,真是自己搞笑了一把。

4、动态填充数据:也许我现在的想法还是错的,但是至少我是这么理解的,为什么一段文字明明可以直接写在div下,却还要加span多套一层,今天发现还是很有用的,在动态填充数据的时候。

如果是这样:

<div class="homework_name_content">

1234556这是内容

<div class="right_border"></div>

</div>

这样显示是完全没有问题的,但是一旦通过$('.homework_name_content').text();进行赋值时,它会将里面的div也一同覆盖掉。

我的这种说法很拗口:在包含div的div填充值会将所包含的div也覆盖掉。

最终多套一层:

<div class="homework_name_content">

<span class="name"></span>

<div class="right_border"></div>

</div>

$('.namet').text();通过这个赋值就没有问题了,不会将子div中的样式和内容覆盖掉。

5、js中replace的讲解:http://www.w3school.com.cn/jsref/jsref_replace.asp

6、目前用到的调试接口和前台页面的方法就是

console输出接口传过来的数据data

alert()一些怀有疑问的值或者通过alert来查看程序是否可以运行到某处。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: