原生JavaScript技巧大收集(1~10)
1、原生JavaScript实现字符串长度截取
01 |
function cutstr(str, len) { |
02 |
var temp; |
03 |
var icount = 0; |
04 |
var patrn = /[^\x00-\xff]/; |
05 |
var strre = "" ; |
06 |
for ( var i = 0; i < str.length; i++) { |
07 |
if (icount < len - 1) { |
08 |
temp = str.substr(i, 1); |
09 |
if (patrn.exec(temp) == null ) { |
10 |
icount = icount + 1 |
11 |
} else { |
12 |
icount = icount + 2 |
13 |
} |
14 |
strre += temp |
15 |
} else { |
16 |
break |
17 |
} |
18 |
} |
19 |
return strre + "..." |
20 |
} |
2、原生JavaScript获取域名主机
01 |
function getHost(url) { |
02 |
var host = "null" ; |
03 |
if ( typeof url == "undefined" || null == url) { |
04 |
url = window.location.href; |
05 |
} |
06 |
var regex = /^\w+\:\/\/([^\/]*).*/; |
07 |
var match = url.match(regex); |
08 |
if ( typeof match != "undefined" && null != match) { |
09 |
host = match[1]; |
10 |
} |
11 |
return host; |
12 |
} |
3、原生JavaScript清除空格
1 |
String.prototype.trim = function () { |
2 |
var reExtraSpace = /^\s*(.*?)\s+$/; |
3 |
return this .replace(reExtraSpace, "$1" ) |
4 |
} |
4、原生JavaScript替换全部
1 |
String.prototype.replaceAll = function (s1, s2) { |
2 |
return this .replace( new RegExp(s1, "gm" ), s2) |
3 |
} |
5、原生JavaScript转义html标签
1 |
function HtmlEncode(text) { |
2 |
return text.replace(/&/g, '&' ).replace(/\"/g, '"' ).replace(/</g, '<' ).replace(/>/g, '>' ) |
3 |
} |
6、原生JavaScript还原html标签
1 |
function HtmlDecode(text) { |
2 |
return text.replace(/&/g, '&' ).replace(/"/g, '\"' ).replace(/</g, '<' ).replace(/>/g, '>' ) |
3 |
} |
7、原生JavaScript时间日期格式转换
01 |
Date.prototype.Format = function (formatStr) { |
02 |
var str = formatStr; |
03 |
var Week = [ '日' , '一' , '二' , '三' , '四' , '五' , '六' ]; |
04 |
str = str.replace(/yyyy|YYYY/, this .getFullYear()); |
05 |
str = str.replace(/yy|YY/, ( this .getYear() % 100) > 9 ? ( this .getYear() % 100).toString() : '0' + ( this .getYear() % 100)); |
06 |
str = str.replace(/MM/, ( this .getMonth() + 1) > 9 ? ( this .getMonth() + 1).toString() : '0' + ( this .getMonth() + 1)); |
07 |
str = str.replace(/M/g, ( this .getMonth() + 1)); |
08 |
str = str.replace(/w|W/g, Week[ this .getDay()]); |
09 |
str = str.replace(/dd|DD/, this .getDate() > 9 ? this .getDate().toString() : '0' + this .getDate()); |
10 |
str = str.replace(/d|D/g, this .getDate()); |
11 |
str = str.replace(/hh|HH/, this .getHours() > 9 ? this .getHours().toString() : '0' + this .getHours()); |
12 |
str = str.replace(/h|H/g, this .getHours()); |
13 |
str = str.replace(/mm/, this .getMinutes() > 9 ? this .getMinutes().toString() : '0' + this .getMinutes()); |
14 |
str = str.replace(/m/g, this .getMinutes()); |
15 |
str = str.replace(/ss|SS/, this .getSeconds() > 9 ? this .getSeconds().toString() : '0' + this .getSeconds()); |
16 |
str = str.replace(/s|S/g, this .getSeconds()); |
17 |
return str |
18 |
} |
8、原生JavaScript判断是否为数字类型
1 |
function isDigit(value) { |
2 |
var patrn = /^[0-9]*$/; |
3 |
if (patrn.exec(value) == null || value == "" ) { |
4 |
return false |
5 |
} else { |
6 |
return true |
7 |
} |
8 |
} |
9、原生JavaScript设置cookie值
1 |
function setCookie(name, value, Hours) { |
2 |
var d = new Date(); |
3 |
var offset = 8; |
4 |
var utc = d.getTime() + (d.getTimezoneOffset() * 60000); |
5 |
var nd = utc + (3600000 * offset); |
6 |
var exp = new Date(nd); |
7 |
exp.setTime(exp.getTime() + Hours * 60 * 60 * 1000); |
8 |
document.cookie = name + "=" + escape(value) + ";path=/;expires=" + exp.toGMTString() + ";domain=360doc.com;" |
9 |
} |
10、原生JavaScript获取cookie值
1 |
function getCookie(name) { |
2 |
var arr = document.cookie.match( new RegExp( "(^| )" + name + "=([^;]*)(;|$)" )); |
3 |
if (arr != null ) return unescape(arr[2]); |
4 |
return null |
5 |
} |
原生JavaScript技巧大收集(1~10)的更多相关文章
- 原生JavaScript技巧大收集100个
原生JavaScript技巧大收集 1.原生JavaScript实现字符串长度截取function cutstr(str, len) { var temp; var icount = 0; var p ...
- 原生JavaScript技巧大收集
原生JavaScript技巧大收集 地址:http://itindex.net/detail/47244-javascript
- 原生JavaScript技巧大收集(11~20)-(终于又被我找到这篇文章了)
11.原生JavaScript加入收藏夹 function AddFavorite(sURL, sTitle) { try { window.external.addFavorite(sURL, sT ...
- 原生态纯JavaScript 100大技巧大收集---你值得拥有
1.原生JavaScript实现字符串长度截取 function cutstr(str, len) { var temp; var icount = 0; var patrn = /[^\x00-\x ...
- 10个原生JavaScript技巧
这些代码片段主要由网友们平时分享的作品代码里面和经常去逛网站然后查看源文件收集到的.把平时网站上常用的一些实用功能代码片段通通收集起来,方便网友们学习使用,利用好的话可以加快网友们的开发速度,提高工作 ...
- 分享10个原生JavaScript技巧
首先在这里要非常感谢无私分享作品的网友们,这些代码片段主要由网友们平时分享的作品代码里面和经常去逛网站然后查看源文件收集到的.把平时网站上常用的一些实用功能代码片段通通收集起来,方便网友们学习使用,利 ...
- javascript技巧大全套
事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElement.setCapture(); event.srcE ...
- 原生JavaScript技巧
时常在技术论坛有看见一些比较好的示例,于是就出于一种收集并学习的态度,于是就保留下来啦~ 当然现在展示的也只是一部分,先放一部分出来尝尝鲜~~~
- JavaScript常用,继承,原生JavaScript实现classList
原文链接:http://caibaojian.com/8-javascript-attention.html 基于 Class 的组件最佳实践(Class Based Components) 基于 C ...
随机推荐
- [翻译]:Cinemachine 官方文档(0)
目录 Overview : Installation and Getting Started :安装并开始 User Guide :用户指南 What is Cinemachine? : 什么是Cin ...
- 假设检验,alpha,p值 通俗易懂的的理解。
假设检验: 一般原假设H0 :表是为 XXX和YYYY无显著差异,H1,是有显著差异. 如果我们定义alpha的值是0.05.意味着我们接受H0是真的但是我们却认为他是假的的概率. 这里你想想,这个值 ...
- js闭包的作用
js闭包的用途详解 js闭包可以用在许多地方.它的最大用处有两个,一个是前面提到的可以读取函数内部的变量,另一个就是让这些变量的值始终保持在内存中.具体怎么理解呢,各位看官请仔细看好下文 我们来看 ...
- Linux内核分析(第二周)
操作系统是如何工作的? 一.总结:三大法宝 1.存储程序计算机 + 函数调用堆栈 + 中断机制 2.堆栈:C语言程序运行时候必须的一个记录调用路径和参数的空间(函数调用框架/提供局部变量/传递参数/保 ...
- SpringMVC(五)-- springmvc的系统学习之拦截器
资源:尚学堂 邹波 springmvc框架视频 一.拦截器简介 使用拦截器时, (1)实现HandlerInterceptor (2)在springmvc配置文件中配置以下信息 <mvc:int ...
- win8以上windows系统eclipse环境下图片显示乱码问题解决
相信升级了win10系统的诸多安卓开发者在用eclipse时会发现一个很不爽的地方,就是原本win7环境下能正常打开的图片文件现在成了一页乱码,我曾多次碰到这个问题,在网上也很难找到行之有效的具体解决 ...
- Docker(二十三)-Docker使用pipework配置本地网络
需求 在使用Docker的过程中,有时候我们会有将Docker容器配置到和主机同一网段的需求.要实现这个需求,我们只要将Docker容器和主机的网卡桥接起来,再给Docker容器配上IP就可以了. 下 ...
- OneZero第五周第一次站立会议(2016.4.18)
1. 时间: 13:00--13:15 共计15分钟. 2. 成员: X 夏一鸣 * 组长 (博客:http://www.cnblogs.com/xiaym896/), G 郭又铭 (博客:http ...
- 一本通1635【例 5】Strange Way to Express Integers
1635:[例 5]Strange Way to Express Integers sol:貌似就是曹冲养猪的加强版,初看感觉非常没有思路,经过一番艰辛的***,得到以下的结果 随便解释下给以后的自己 ...
- Integration Guide
This document, along with the samples and Javadoc™ in the IBM Sametime Software Development Kit (SDK ...