// 数组删除函数
Array.prototype.remove = function(val) {
var index = this.indexOf(val);
if (index > -1) {
this.splice(index, 1);
}
};
file n. 文件;v. 保存文件
command n. 命令,指令
use v. 使用,用途
program n. 程序
line n. (数据,程序)行,线路
if conj. 如果
…… 略
nodejs 读取指定目录下的所有文件,并生成JSON
// 文件对象
let fs = require('fs');
// 数组JSON
let minfiles_array = [];
// 读取static下面的所有文件
const basePath = './';
// 获取文件
let getFile = function(basePath){
const files = fs.readdirSync(basePath);
files.forEach(function(item, index) {
// fs.stat(fileName1, (err, stats) => {
// if (err) throw err
// console.log('文件属性:',
// stats)
// })
let stat = fs.lstatSync(basePath + item);
// 如果是一个文件夹
if (stat.isDirectory() === true) {
// 继续遍历
getFile(basePath + item + '/');
}else{
// 检查同名原文件是否存在于当前目录中。
fs.access(basePath+item, fs.constants.F_OK, (err) => {
if(err){
// console.log('不存在');
}else{
// 替换文件名
// let newitem = item.replace(/ 超清(720P)/g, "");
let reg = /[0-9]+/g;
let numList = item.match(reg);
let num = null;
if (numList) {
num = numList[0];
minfiles_array.push({
num: num,
name: item
});
}
// 重命名走起
fs.rename(basePath+item, basePath+num+'.mp4', function(err) {
if (!err) {
console.log(basePath+num+'.mp4');
}
});
}
});
}
})
}
// 执行查询
getFile(basePath);
// 输出有文件
setTimeout(function(){
minfiles_array.sort(function (a,b){ return a-b });
console.log(minfiles_array.length);
let str = JSON.stringify(minfiles_array)
fs.writeFile('./extension.json', str, function(err) {
if (err) {
res.status(500).send('Server is error...')
}
})
},1000*5);
var url = '/hr/api/**'
if (history.replaceState) {
history.replaceState(null, document.title, url)
history.go(0)
} else {
location.replace(url)
}
第一步:LibreOffice实现word转pdf
第二步:利用 Imagick、GhostScript 把pdf文件转成图片
// 数据类型深度检查
var typefor = function(obj, type) {
var oType = {
'[object Boolean]': 'Boolean',
'[object Number]': 'Number',
'[object String]': 'String',
'[object Function]': 'Function',
'[object Array]': 'Array',
'[object Date]': 'Date',
'[object RegExp]': 'RegExp',
'[object Object]': 'Object'
},
ret = obj == null ? String(obj) : oType[Object.prototype.toString.call(obj)] || 'Unknown';
return type ? type.test(ret) : ret;
};
// 数据兼容处理 更换JS对象索引KEY值 添加映射字段
function preDataProcessor(res){
// 添加映射字段 预处理后台数据兼容前端运行代码
// 映射对象
var transformObjConfig = {
"Live_control": {
"c": "resultcode", // 原来的字段 resultcode,新字段 c
"m": "msg", // 原来的字段 msg,新字段 m
"d": {
"s": "status", // 可以观看直播状态
"t": "status_text", // 直播状态文字 直播中
"c": "t_class", // 前端状态文案的样式,值:t-playing t_wait
"d": "curr_date", // 是否是当天,1是,0不是,只有当天将要开播的直播间才显示倒计时
"m": "dec_time", // 当前时间距直播开始时间的差,单位秒
"p": "play_url", // 直播视频播放链接
"f": "flv_url", // 直播视频播放链接(flv协议)
"a": "audio_url", // 直播音频播放链接
"af": "audio_url_flv", // audio_url_flv直播音频播放链接
"w": "switch", // 是否可以切换硬盘,1是,0反之。
"o": "options" // 点播回放防盗链参数以及点播ID,可回放时返回字段
},
"a":"Live_control" // action操作类型
}
}, transformObj = null;
// 映射赋值
function resetKey(data,config){
console.info('resetKey--->',data,config)
for(var k in config){
if(k != 'ownerProperty' && data.hasOwnProperty(k) && config.hasOwnProperty(k) ){
if(!typefor(config[k], /Object/)){
data[config[k]] = data[k];
}else{
data[config[k]['ownerProperty']] = resetKey(data[k],config[k]);
}
}
}
return data;
}
// 找配置对象
for(var k in transformObjConfig){
if(res.hasOwnProperty('a') && res['a'] === k ){
// 处理对应数据
transformObj = transformObjConfig[k];
for(var i in transformObj){
if(res.hasOwnProperty(i) && transformObj.hasOwnProperty(i) ){
if(typefor(transformObj[i], /Object/)){
res[transformObj[i]['ownerProperty']] = resetKey(res[i],transformObj[i]);
}else{
res[transformObj[i]] = res[i];
}
}
}
}
}
return res;
},
// 测试
var abc = preDataProcessor({
a: 'Live_login',
c: 0,
m: '测试',
d: {
i: 22,
j:[111,222,555],
s: {
a : 555
}
}
})
console.info(abc)
CSS:
.container {
display: table; /*主要代码*/
*position: relative; /*for ie67*/
background-color: #FF5E53; width: 800px; height: 200px; overflow: hidden; margin: 0 auto;
}
.content {
vertical-align: middle; display: table-cell; text-align: center; /*主要代码*/
*position: absolute; *top: 50%; *left: 50%; /*for ie67*/
}
.center {
display: inline-block; /*主要代码*/
*display: inline; zoom: 1; *position: relative; *top: -50%; *left: -50%; /*for ie67*/
padding: 10px; border: 1px solid #fff;
}
HTML:
<div class="container">
<div class="content">
<div class="center">
啦啦啦,啦啦啦,我是卖报的小行家....<br>dsdADSsdSD
</div>
</div>
</div>