返回最高版本号
var list = [{"firmwareVersion":"1.3.12"},
{"firmwareVersion":"1.3.11"},
{"firmwareVersion":"2.3.5"},
{"firmwareVersion":"1.5.2"}];
function returnVersion(list){//返回最高版本的固件的序号
var index = 0;
for(var i=0;i<list.length-1;i++){
var arr = list[index].firmwareVersion.split('.');
var arr1 = list[i+1].firmwareVersion.split('.');
for(var j=0;j<arr.length;j++){
arr[j] = Number(arr[j])
arr1[j] = Number(arr1[j])
}
var flag0=false;
var flag1=false;
var flag2=false;
if(arr[0] < arr1[0]){
flag0 = true
}
if(arr[1] < arr1[1]){
flag1 = true
}
if(arr[2] < arr1[2]){
flag2 = true
}
if(flag0){
index = i+1;
}else{
if(flag1){
index = i+1;
}else{
if(flag2){
index = i+1;
}
}
}
}
return index;
};
console.log(returnVersion(list))
过滤所有特殊字符
var reg = /\~|\!|\!|\@|\#|\$|\^|\¥|\%|\…|\&|\*|\(|\)|\—|\+|\{|\}|\“|\”|\《|\》|\?|\?|\<|\>|\'|\"|\/|`|,|\./g;
var str = '1232`~!@#%eqwe%^,./PPP';
console.log(str.replace(reg,''))
获取日期
function getDay(day){
var today = new Date();
var targetday_milliseconds=today.getTime() + 1000*60*60*24*day;
today.setTime(targetday_milliseconds); //注意,这行是关键代码
var tYear = today.getFullYear();
var tMonth = today.getMonth();
var tDate = today.getDate();
tMonth = doHandleMonth(tMonth + 1);
tDate = doHandleMonth(tDate);
return tYear+"-"+tMonth+"-"+tDate;
}
function doHandleMonth(month){
var m = month;
if(month.toString().length == 1){
m = "0" + month;
}
return m;
}
console.log(getDay(0))//获取当天
console.log(getDay(-7))//获取7天前日期
时间戳转换成日期
function timestampToTime(timestamp) {
var date = new Date(timestamp);//时间戳为10位需*1000,时间戳为13位的话不需乘1000
// var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000
var Y = date.getFullYear() + '-';
var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';
var D = (date.getDate() < 10 ? '0'+ date.getDate() : date.getDate()) + ' ';
var h = (date.getHours() < 10 ? '0'+ date.getHours() : date.getHours()) + ':';
var m = (date.getMinutes() < 10 ? '0'+ date.getMinutes() : date.getMinutes()) + ':';
var s = (date.getSeconds() < 10 ? '0'+ date.getSeconds() : date.getSeconds());
return Y+M+D+h+m+s;
}
手机号中间四位加密
function phoneEncry(phone){
var tel = String(phone);
var dh=tel.substr(0,3)+"****"+tel.substr(7);
return dh;
}.
跑马灯
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>跑马灯</title>
<link rel="stylesheet" href="base.css">
<style>
ul{
width: 620px;
margin: 0 auto;
}
li{
float: left;
width: 100px;
height: 100px;
border: 2px solid #000;
margin: 10px;
text-align: center;
font-size: 40px;
line-height: 100px;
}
.none{
border: 2px solid #fff;
}
.selected{
color: #fff;
background-color: red;
}
</style>
</head>
<body>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>16</li>
<li class="none"></li>
<li class="none"></li>
<li class="none"></li>
<li>6</li>
<li>15</li>
<li class="none"></li>
<li class="start" style="cursor: pointer;">开始</li>
<li class="none"></li>
<li>7</li>
<li>14</li>
<li class="none"></li>
<li class="none"></li>
<li class="none"></li>
<li>8</li>
<li>13</li>
<li>12</li>
<li>11</li>
<li>10</li>
<li>9</li>
</ul>
<script src="jquery-1.10.2.js"></script>
<script>
$(function(){
var i = 0;
var flag = false;
var timer = null;
$('.start').click(function(){
flag = !flag;
if(flag){
timer = setInterval(function(){
i++;
if(i>16){
i = 1;
}
$('li').each(function(index,ele){
if($(ele).html() == i){
$('li').removeClass('selected');
$(ele).addClass('selected');
}
})
},100)
}else{
clearInterval(timer)
}
return false;
})
})
</script>
</body>
</html>
复杂密码验证
一。判断密码满足大写字母,小写字母,数字和特殊字符,其中任意三种组合,且长度在8到15之间
var testPassword =/^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\W_!@#$%^&*`~()-+=]+$)(?![a-z0-9]+$)(?![a-z\W_!@#$%^&*`~()-+=]+$)(?![0-9\W_!@#$%^&*`~()-+=]+$)[a-zA-Z0-9\W_!@#$%^&*`~()-+=]{8,15}$/;
二。判断密码满足大写字母,小写字母,数字和特殊字符,其中四种组合都需要包含
var testPassword =/^(?=.*?[a-z])(?=.*?[A-Z])(?=.*?\d)(?=.*?[!#@*&.])[a-zA-Z\d!#@*&.]*$/;