原生js常用方法

时间:2023-03-10 01:47:42
原生js常用方法

原生JavaScript设置cookie值

function setCookie(name, value, Hours) {

var d = new Date();

var offset = 8;

var utc = d.getTime() + (d.getTimezoneOffset() * 60000);

var nd = utc + (3600000 * offset);

var exp = new Date(nd);

exp.setTime(exp.getTime() + Hours * 60 * 60 * 1000);

document.cookie = name + "=" + escape(value) + ";path=/;expires=" + exp.toGMTString() + ";domain=360doc.com;"

}

原生JavaScript获取cookie值

function getCookie(name) {

var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));

if (arr != null) return unescape(arr[2]);

return null

}

原生JavaScript实现返回顶部的通用方法

function backTop(btnId) {

var btn = document.getElementById(btnId);

var d = document.documentElement;

var b = document.body;

window.onscroll = set;

btn.style.display = "none";

btn.onclick = function() {

btn.style.display = "none";

window.onscroll = null;

this.timer = setInterval(function() {

d.scrollTop -= Math.ceil((d.scrollTop + b.scrollTop) * 0.1);

b.scrollTop -= Math.ceil((d.scrollTop + b.scrollTop) * 0.1);

if ((d.scrollTop + b.scrollTop) == 0) clearInterval(btn.timer, window.onscroll = set);

},

10);

};

function set() {

btn.style.display = (d.scrollTop + b.scrollTop > 100) ? 'block': "none"

}

};

backTop('goTop');

原生JavaScript获得URL中GET参数值

// 用法:如果地址是 test.htm?t1=1&t2=2&t3=3, 那么能取得:GET["t1"], GET["t2"], GET["t3"]

function get_get(){

querystr = window.location.href.split("?")

if(querystr[1]){

GETs = querystr[1].split("&")

GET =new Array()

for(i=0;i<GETs.length;i++){

tmp_arr = GETs[i].split("=")

key=tmp_arr[0]

GET[key] = tmp_arr[1]

}

}

return querystr[1];

}

原生JavaScript实现全部取消选择通用方法

function uncheckAll(form) {

for (var i=0;i<form.elements.length;i++){

var e = form.elements[i];

if (e.name != 'chkall')

e.checked=!e.checked;

}

}

原生JavaScript判断是否为邮箱

function isEmail(str){

var re=/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;

if (re.test(str) != true) {

return false;

}else{

return true;

}

}

原生JavaScript常用的正则表达式大收集

匹配中文字符的正则表达式: [\u4e00-\u9fa5]

匹配双字节字符(包括汉字在内):[^\x00-\xff]

匹配空行的正则表达式:\n[\s| ]*\r

匹配 HTML 标记的正则表达式:<(.*)>.*<\/\1>|<(.*) \/>

匹配首尾空格的正则表达式:(^\s*)|(\s*$)

匹配 IP 地址的正则表达式:/(\d+)\.(\d+)\.(\d+)\.(\d+)/g

匹配 Email 地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

匹配网址 URL 的正则表达式:http://(/[\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?

sql 语句:^(select|drop|delete|create|update|insert).*$

非负整数:^\d+$

正整数:^[0-9]*[1-9][0-9]*$

非正整数:^((-\d+)|(0+))$

负整数:^-[0-9]*[1-9][0-9]*$

整数:^-?\d+$

非负浮点数:^\d+(\.\d+)?$

正浮点数:^((0-9)+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$

非正浮点数:^((-\d+\.\d+)?)|(0+(\.0+)?))$

英文字符串:^[A-Za-z]+$

英文大写串:^[A-Z]+$

英文小写串:^[a-z]+$

英文字符数字串:^[A-Za-z0-9]+$

英数字加下划线串:^\w+$

E-mail地址:^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$

URL:^[a-zA-Z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\s*)?$ 或:^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$

邮政编码:^[1-9]\d{5}$

电话号码:^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$

手机号码:^((\(\d{2,3}\))|(\d{3}\-))?13\d{9}$

双字节字符(包括汉字在内):^\x00-\xff

匹配首尾空格:(^\s*)|(\s*$)

匹配 HTML 标记:<(.*)>.*<\/\1>|<(.*) \/>

匹配空行:\n[\s| ]*\r

提取信息中的网络链接:(h|H)(r|R)(e|E)(f|F) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?

提取信息中的邮件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

提取信息中的图片链接:(s|S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?

提取信息中的 IP 地址:(\d+)\.(\d+)\.(\d+)\.(\d+)

提取信息中的中国手机号码:(86)*0*13\d{9}

提取信息中的中国固定电话号码:(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8}

提取信息中的中国电话号码(包括移动和固定电话):(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}

提取信息中的中国邮政编码:[1-9]{1}(\d+){5}

提取信息中的浮点数(即小数):(-?\d*)\.?\d+

提取信息中的任何数字 :(-?\d*)(\.\d+)?

IP:(\d+)\.(\d+)\.(\d+)\.(\d+)

电话区号:^0\d{2,3}$

腾讯 QQ 号:^[1-9]*[1-9][0-9]*$

帐号(字母开头,允许 5-16 字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$

中文、英文、数字及下划线:^[\u4e00-\u9fa5_a-zA-Z0-9]+$

原生JavaScript实现全选通用方法

function checkall(form, prefix, checkall) {

var checkall = checkall ? checkall : 'chkall';

for(var i = 0; i < form.elements.length; i++) {

var e = form.elements[i];

if(e.type=="checkbox"){

e.checked = form.elements[checkall].checked;

}

}

}

原生JavaScript实现全部取消选择通用方法

function uncheckAll(form) {

for (var i=0;i<form.elements.length;i++){

var e = form.elements[i];

if (e.name != 'chkall')

e.checked=!e.checked;

}

}