JAVA 文件操作-随机流的一些理解
昨天debug到半夜都是因为文件操作问题……心累了,关于文件操作,什么语言里都不是很会,JAVA里确实提供了很多种类,但这么多种反倒让人觉得更加烦恼了。
在随机流中的使用和其他语言比较类似(C/PHP)所以最终还是使用了他,功能也比较强大。
RandomAccessFile objectOut = new RandomAccessFile(accountNumber+"_info.txt", "rw");
昨天debug到半夜都是因为文件操作问题……心累了,关于文件操作,什么语言里都不是很会,JAVA里确实提供了很多种类,但这么多种反倒让人觉得更加烦恼了。
在随机流中的使用和其他语言比较类似(C/PHP)所以最终还是使用了他,功能也比较强大。
RandomAccessFile objectOut = new RandomAccessFile(accountNumber+"_info.txt", "rw");
这个和构造函数的意思有点像,但功能又不同,他可以让两个属性建立关联,通过修改一个属性来改变另一个属性。
var book = {
_year:2004,
edition: 1
};
Object.defineProperty(book, "year", {
get: function() {
return this._year;
},
set: function(newValue) {
if (newValue > 2004) {
this._year += newValue;
this.edition += newValue - 2004;
}
}
});
book.year = 2006;
console.log(book.edition);
半年来的话,修改_year,输出值改变的只有year,但通过set,在修改year时edition也同时改变了。
首先我们来试试以下这段代码:
var values = [1, 0, 5, 15, 10];
values.reverse();
console.log(values);
输出结果会是什么呢:
[ 10, 15, 5, 0, 1 ]
http://www.lellansin.com/jade-%E6%A8%A1%E6%9D%BF%E5%BC%95%E6%93%8E%E4%BD%BF%E7%94%A8.html
http://www.cnblogs.com/fullhouse/archive/2011/07/18/2109945.html
http://blog.csdn.net/clh604/article/details/8491077
https://cnodejs.org/topic/5368adc5cf738dd6090060f2
http://www.cnblogs.com/fullhouse/archive/2011/07/18/2109945.html
http://www.w3cplus.com/html/jade.html
暂时Mark一下,期待之后的笔记吧
在使用CSS的时候,你可能会出现疑问,我如何在容器中将文本或元素垂直对齐。现在使用CSS3 Transforms,我们可以更有效解决这问题,如下:
.verticalcenter{
position: relative;
top: 50%;
-webkit-transform: translateY(-50%);
-o-transform: translateY(-50%);
transform: translateY(-50%);
}
使用这个技术,文本、段落等都可以垂直对齐,CSS3 Transform 支持Chrome 4, Opera 10, Safari 3, Firefox 3, Internet Explorer 9。
jQuery方法提供两种方法将一个jQuery对象转换为DOM对象
比如
var $cr = $('#cr');
var cr = $cr[0];
// var cr = $cr.get(0);
这两种方法都能把jQuery对象转换成DOM对象
而把DOM对象转换成jQuery对象只要用$()
把DOM对象包起来。
比如
var cr = document.getElementById('cr');
var $r = $(cr);
之所以对这个转换有着需求,是因为DOM对象才能使用DOM中的方法,jQuery对象不可以使用DOM中的方法。
导读:
w3school noConflict
jQuery API中文文档 noConflict
noConflict方法可以处理一些标记占用的冲突问题(这是目前我觉得的实用的用途)
$.noConflict()可以移交$的控制权,而如果是$.noConflict(true),那么jQuery和$都会消失,重新赋值如:var $ = window.$.noConflict(true), jQuery = $
这样就能避免冲突在局部使用需要使用的jQuery版本啦。
javascript中 如果希望程序可以直接实行,而不是进行定义,可以再function前面加上~或者其他运算符,这样就能直接执行了。
这样做的优点是可以起到闭包的效果(作用域限定)
用法示例:
~function() {
var i = 0;
console.log(i);
}();
就本身而言,console.log不会直接执行,而 如果想要执行,i则会变成全局变量,经过~function之后,i在运行完函数之后就会被销毁了www
在前两天做播放器的时候添加监听后删除监听遇到了一点麻烦,删不掉,后来看了一下才发现,参数需要完全对应,什么叫完全对应呢,换句话说:
$('.video')[0].addEventListener('timeupdate', currentTimeHandler, true);
比如这句,需要传入三个参数,这样才能够删除,为什么一定要这样,没错,蛋疼的地方就在这里:
在add和remove时,第三个参数确实可以不写,但此时他们的默认情况是不一样的!!!
通常情况下addEventListener是false……
关于监听的详细理解,可以见本文:http://www.cnblogs.com/binyong/articles/1750263.html
最近由于工作需要在研究HTML5的播放器,HTML5其实自带的已经很全了,但是当我们需要把切割的视频整合播放的时候就遇到了麻烦,这里我想到了一个思路,正好发现网上也提到了很多这种思路:
首先多播放器窗口,除了一个以外display:none
,一般需求中两个就足够了。然后监听是否结束(关于监听,稍后再发一篇讲讲Javascript的监听问题),监听本P播放结束之后将下一个的链接赋值到隐藏的那个,交替display,进度条当然需要重做,这里就需要统计总时长了。
关于HTML5 Video的事件可以参考:http://www.w3school.com.cn/tags/html_ref_audio_video_dom.asp
当然理论上很好想,实际在用的时候还是遇到了一些问题:
最近由于工作需要在研究HTML5的播放器,HTML5其实自带的已经很全了,但是当我们需要把切割的视频整合播放的时候就遇到了麻烦,这里我想到了一个思路,正好发现网上也提到了很多这种思路:
首先多播放器窗口,除了一个以外display:none
,一般需求中两个就足够了。然后监听是否结束(关于监听,稍后再发一篇讲讲Javascript的监听问题),监听本P播放结束之后将下一个的链接赋值到隐藏的那个,交替display,进度条当然需要重做,这里就需要统计总时长了。
关于HTML5 Video的事件可以参考:http://www.w3school.com.cn/tags/html_ref_audio_video_dom.asp
当然理论上很好想,实际在用的时候还是遇到了一些问题: