1、字符串的截取
var str="www.baidu.com/?page";
// 1、substring() indexOf() str.lastIndexOf()字符串剪裁
str.substring(0, str.indexOf("?page"));
str.substring(0, str.lastIndexOf("?page"));
// 2、正则表达式
str.replace(/?page/, "");
// 3、split() join() 字符串分拆、合并
str.split("?page").join("");
//4、splice() indexOf() str.lastIndexOf()字符截取
str.splice(str.indexOf("?page"),"?page".length,‘‘)
str.splicestr.lastIndexOf("?page"),"?page".length,‘‘)
//5、substr(start,length)字符串截取 length代表截取的长度
str.substr(0,str.indexOf("?page"))
str.substr(0,str.lastIndexOf("?page"))
使用情况:
1、4、5在Goolge运行最快,
2、除了在goolge最快
3、最慢,因为它执行了字符专数组,数组转字符
建议:没有要求只在goolge环境下使,使用正则表达是截取
2、获取当前星期
1、if判断
var str = "";
var week = new Date().getDay();
if (week == 0) {
str = "今天是星期日";
} else if (week == 1) {
str = "今天是星期一";
} else if (week == 2) {
str = "今天是星期二";
} else if (week == 3) {
str = "今天是星期三";
} else if (week == 4) {
str = "今天是星期四";
} else if (week == 5) {
str = "今天是星期五";
} else if (week == 6) {
str = "今天是星期六";
}else{
console.log(‘bug‘)
}
2、switch判断
var str1 = "今天是星期";
var week = new Date().getDay();
switch (week) {
case 0 :
str1 += "日";
break;
case 1 :
str1 += "一";
break;
case 2 :
str1 += "二";
break;
case 3 :
str1 += "三";
break;
case 4 :
str1 += "四";
break;
case 5 :
str1 += "五";
break;
case 6 :
str1 += "六";
break;
default:
console.log(‘bug‘)
break;
}
3、数组截取
var a = new Array("日", "一", "二", "三", "四", "五", "六");
var week = new Date().getDay();
var str = "今天是星期"+ a[week];
4、字符截取
var str = "今天是星期" + "日一二三四五六".charAt(new Date().getDay());
str.charAt()获取标识的字符;当然也可以使用别的字符串截取方法(substring,substr,splice)但没有charAt好因为它在执行上最省事
使用情况:
字符截取》数组截取》switch判断》if判断
建议使用:4、字符截取
3、cookie sessionStorage localStorage 存储
共同点:都是保存在浏览器端,且同源的。区别:cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递。而sessionStorage和localStorage不会自动把数据发给服务器,仅在本地保存。cookie数据还有路径(path)的概念,可以限制cookie只属于某个路径下。存储大小限制也不同,cookie数据不能超过4k,同时因为每次http请求都会携带cookie,所以cookie只适合保存很小的数据,如会话标识。sessionStorage和localStorage 虽然也有存储大小的限制,但比cookie大得多,可以达到5M或更大。数据有效期不同,sessionStorage:仅在当前浏览器窗口关闭前有效,自然也就不可能持久保持;localStorage:始终有效,窗口或浏览器关闭也一直保存,因此用作持久数据;cookie只在设置的cookie过期时间之前一直有效,即使窗口或浏览器关闭。作用域不同,sessionStorage不在不同的浏览器窗口中共享,即使是同一个页面;localStorage 在所有同源窗口中都是共享的;cookie也是在所有同源窗口中都是共享的。Web Storage 支持事件通知机制,可以将数据更新的通知发送给监听者。Web Storage 的 api 接口使用更方便。
cookie存储大小4k;sessionStorage localStorage 存储大小5M,IE8下每个独立的存储空间为10M,
与Cookie相比,Web Storage存在不少的优势,概括为以下几点:
1. 存储空间更大:IE8下每个独立的存储空间为10M,其他浏览器实现略有不同,但都比Cookie要大很多。
2. 存储内容不会发送到服务器:当设置了Cookie后,Cookie的内容会随着请求一并发送的服务器,这对于本地存储的数据是一种带宽浪费。而Web Storage中的数据则仅仅是存在本地,不会与服务器发生任何交互。
3. 更多丰富易用的接口:Web Storage提供了一套更为丰富的接口,使得数据操作更为简便。
4. 独立的存储空间:每个域(包括子域)有独立的存储空间,各个存储空间是完全独立的,因此不会造成数据混乱。
Cookie安全性好,并且可以用过期时间来做一些必要的判断;当然sessionStorage localStorag也是可以设置过期时间的,当必须自定义,需要在存储信息是存储当前时间,以及存在时长,获取在存储时间和当前时间进行减法就好,当操作比较多不建议使用。
4、怎么实现居中布局
1、magrin:auto;适合pc 居中,但是必须设置width、height
2、弹性盒 display:flex;
justify-content: center;
align-items: center;
3、定位实现居中
A、 position: absolute;
top: 50%;
left: 50%;
width:100%;height:100%;
transform: translate(-50%,-50%);
B、 position: absolute;
top:0;
left: 0;
right:0;
bottom;0;
width:100px;height:100px;
magin:auto;
C、 position: absolute;
top:50%;
left: 50%;
width:200px;height:200px;
magin-left:-100px;
magin-top;-100px;
建议:使用弹性盒居中;但是要注意兼用(存在兼容问题);
5、 禁止a标签跳转链接
<a href ="javascript:return false;">这个链接不能点击 </a> 也可以写成
<a href ="javascript:volid(0);">这个链接不能点击 </a> 都一样会阻止a 标签的跳转行为!