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, '&amp').replace(/\"/g, '&quot;').replace(/</g, '&lt;').replace(/>/g, '&gt;')
3 }

6、原生JavaScript还原html标签

1 function HtmlDecode(text) {
2     return text.replace(/&amp;/g, '&').replace(/&quot;/g, '\"').replace(/&lt;/g, '<').replace(/&gt;/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)的更多相关文章

  1. 原生JavaScript技巧大收集100个

    原生JavaScript技巧大收集 1.原生JavaScript实现字符串长度截取function cutstr(str, len) { var temp; var icount = 0; var p ...

  2. 原生JavaScript技巧大收集

    原生JavaScript技巧大收集 地址:http://itindex.net/detail/47244-javascript

  3. 原生JavaScript技巧大收集(11~20)-(终于又被我找到这篇文章了)

    11.原生JavaScript加入收藏夹 function AddFavorite(sURL, sTitle) { try { window.external.addFavorite(sURL, sT ...

  4. 原生态纯JavaScript 100大技巧大收集---你值得拥有

    1.原生JavaScript实现字符串长度截取 function cutstr(str, len) { var temp; var icount = 0; var patrn = /[^\x00-\x ...

  5. 10个原生JavaScript技巧

    这些代码片段主要由网友们平时分享的作品代码里面和经常去逛网站然后查看源文件收集到的.把平时网站上常用的一些实用功能代码片段通通收集起来,方便网友们学习使用,利用好的话可以加快网友们的开发速度,提高工作 ...

  6. 分享10个原生JavaScript技巧

    首先在这里要非常感谢无私分享作品的网友们,这些代码片段主要由网友们平时分享的作品代码里面和经常去逛网站然后查看源文件收集到的.把平时网站上常用的一些实用功能代码片段通通收集起来,方便网友们学习使用,利 ...

  7. javascript技巧大全套

    事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElement.setCapture();  event.srcE ...

  8. 原生JavaScript技巧

    时常在技术论坛有看见一些比较好的示例,于是就出于一种收集并学习的态度,于是就保留下来啦~  当然现在展示的也只是一部分,先放一部分出来尝尝鲜~~~

  9. JavaScript常用,继承,原生JavaScript实现classList

    原文链接:http://caibaojian.com/8-javascript-attention.html 基于 Class 的组件最佳实践(Class Based Components) 基于 C ...

随机推荐

  1. 物理机通过http访问eNSP虚拟Server

    由于测试需要,本文主要通过一个简单的例子介绍通过物理机的浏览器访问华为eNSP虚拟Server,访问网页. 1.首先配置虚拟网卡的地址 2.通过华为的eNSP模拟软件,做出如下拓扑结构图,配置地址如图 ...

  2. Monkey基本使用

    什么是 Monkey Monkey 是一个 Android 自动化测试小工具.主要用于Android 的压力测试, 主要目的就是为了测试app 是否会Crash. Monkey 特点 顾名思义,Mon ...

  3. 回溯-uva129

    题目链接:https://vjudge.net/problem/UVA-129 题解: 这道题卡了一会儿的时间,一开始最大的问题是如何判断添加了一个字符之后,该字符串是不是一个困难的串,解决办法是:利 ...

  4. docker 安装 kali

    1.安装 docker pull kalilinux/kali-linux-docker 2.运行容器 docker run -t -i kalilinux/kali-linux-docker /bi ...

  5. ajax请求超时判断(转载)

    ajax请求时有个参数可以借鉴一下 var ajaxTimeOut = $.ajax({ url:'', //请求的URL timeout : 1000, //超时时间设置,单位毫秒 type : ' ...

  6. 《Linux内核分析》第二周笔记 操作系统是如何工作的

    操作系统是如何工作的 一.函数调用堆栈 1.三个法宝 计算机是如何工作的?(总结)——三个法宝(存储程序计算机.函数调用堆栈.中断机制) 1)存储程序计算机工作模型,计算机系统最最基础性的逻辑结构: ...

  7. 《Linux内核分析》第二周学习笔记

    <Linux内核分析>第二周学习笔记 操作系统是如何工作的 郭垚 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/ ...

  8. MongoDB入门 和nodejs操作

    简介 MongoDB 开源,高性能的NoSQL数据库:支持索引.集群.复制和故障转移.各种语言的驱动程序:高伸缩性: NoSQL毕竟还处于发展阶段,也有说它的各种问题的:http://coolshel ...

  9. PSP(3.16——3.22)以及周记录

    3.17 13:30 14:45 15 60 讨论班 A Y min 14:50 17:05 5 130 得到设备 Cordova 蓝牙连接 A Y min 23:15 23:45 5 25 英语百词 ...

  10. thnkphp框架面试问题

    Thinkphp面试问题 1.如何理解TP中的单一入口文件? 答:ThinkPHP采用单一入口模式进行项目部署和访问,无论完成什么功能,一个项目都有一个统一(但不一定是唯一)的入口.应该说,所有项目都 ...