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

  1、原生JavaScript实现字符串长度截取

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
function cutstr(str, len) {
    var temp;
    var icount = 0;
    var patrn = /[^\x00-\xff]/;
    var strre = "";
    for (var i = 0; i < str.length; i++) {
        if (icount < len - 1) {
            temp = str.substr(i, 1);
            if (patrn.exec(temp) == null) {
                icount = icount + 1
            } else {
                icount = icount + 2
            }
            strre += temp
        } else {
            break
        }
    }
    return strre + "..."
}

  2、原生JavaScript获取域名主机

1
2
3
4
5
6
7
8
9
10
11
12
function getHost(url) {
    var host = "null";
    if(typeof url == "undefined"|| null == url) {
        url = window.location.href;
    }
    var regex = /^\w+\:\/\/([^\/]*).*/;
    var match = url.match(regex);
    if(typeof match != "undefined" && null != match) {
        host = match[1];
    }
    return host;
}

  3、原生JavaScript清除空格

1
2
3
4
String.prototype.trim = function() {
    var reExtraSpace = /^\s*(.*?)\s+$/;
    return this.replace(reExtraSpace, "$1")
}

  4、原生JavaScript替换全部

1
2
3
String.prototype.replaceAll = function(s1, s2) {
    return this.replace(new RegExp(s1, "gm"), s2)
}

  5、原生JavaScript转义html标签

1
2
3
function HtmlEncode(text) {
    return text.replace(/&/g, '&amp').replace(/\"/g, '&quot;').replace(/</g, '&lt;').replace(/>/g, '&gt;')
}

  6、原生JavaScript还原html标签

1
2
3
function HtmlDecode(text) {
    return text.replace(/&amp;/g, '&').replace(/&quot;/g, '\"').replace(/&lt;/g, '<').replace(/&gt;/g, '>')
}

  7、原生JavaScript时间日期格式转换

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Date.prototype.Format = function(formatStr) {
    var str = formatStr;
    var Week = ['日', '一', '二', '三', '四', '五', '六'];
    str = str.replace(/yyyy|YYYY/, this.getFullYear());
    str = str.replace(/yy|YY/, (this.getYear() % 100) > 9 ? (this.getYear() % 100).toString() : '0' + (this.getYear() % 100));
    str = str.replace(/MM/, (this.getMonth() + 1) > 9 ? (this.getMonth() + 1).toString() : '0' + (this.getMonth() + 1));
    str = str.replace(/M/g, (this.getMonth() + 1));
    str = str.replace(/w|W/g, Week[this.getDay()]);
    str = str.replace(/dd|DD/, this.getDate() > 9 ? this.getDate().toString() : '0' + this.getDate());
    str = str.replace(/d|D/g, this.getDate());
    str = str.replace(/hh|HH/, this.getHours() > 9 ? this.getHours().toString() : '0' + this.getHours());
    str = str.replace(/h|H/g, this.getHours());
    str = str.replace(/mm/, this.getMinutes() > 9 ? this.getMinutes().toString() : '0' + this.getMinutes());
    str = str.replace(/m/g, this.getMinutes());
    str = str.replace(/ss|SS/, this.getSeconds() > 9 ? this.getSeconds().toString() : '0' + this.getSeconds());
    str = str.replace(/s|S/g, this.getSeconds());
    return str
}

  8、原生JavaScript判断是否为数字类型

1
2
3
4
5
6
7
8
function isDigit(value) {
    var patrn = /^[0-9]*$/;
    if (patrn.exec(value) == null || value == "") {
        return false
    } else {
        return true
    }
}

  9、原生JavaScript设置cookie值

1
2
3
4
5
6
7
8
9
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;"
}

  10、原生JavaScript获取cookie值

1
2
3
4
5
function getCookie(name) {
    var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));
    if (arr != null) return unescape(arr[2]);
    return null
}

分享10个原生JavaScript技巧相关推荐

  1. 好程序员Web前端分享无法忽视的JavaScript技巧

    好程序员Web前端培训分享无法忽视的JavaScript技巧.在大家从事web前端的工作中,很容易忽视一些JavaScript的小技巧,今天为大家总结了一些容易被大家忽略的技巧,希望能够对大家有所帮助 ...

  2. 视频号该如何涨粉引流,分享10种涨粉技巧+5种引流方法丨国仁网络

    微信的视频号是一个人人可以记录和创作的平台,也是一个了解他人.了解世界的窗口. 当你开通了微信视频号,准备发视频的时候,你得想清楚你发给谁看?是自娱自乐那当然无所谓. 但是如果你是想通过玩微信视频号涨 ...

  3. jq 移动端网页分享功能_原生javascript实现分享到朋友圈功能 支持ios和android

    现在主流的分享工具也有很多,例如JiaThis.bShare分享,甚至一些大公司的如百度分享,但是他们依旧停留在只是在PC端的分享,对手机端的支持不是太好. 大家都知道现在很多手机端浏览器都内置了一些 ...

  4. 10 个很实用的 JavaScript 技巧

    作者简介: 李中凯 八年多工作经验 前端负责人, 擅长JavaScript/Vue. 掘金文章专栏:https://juejin.im/user/57c7cb8a0a2b58006b1b8666/po ...

  5. mysql插入ㄖ_原生JavaScript代码100个实例

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

  6. 100个常用的原生JavaScript函数

    1.原生JavaScript实现字符串长度截取 复制代码代码如下: function cutstr(str, len) {     var temp;     var icount = 0;     ...

  7. 分享 10 个前端开发者需要知道的 JS 技巧

    英文 | https://javascript.plainenglish.io/as-a-front-end-engineer-10-javascript-tricks-and-tips-you-sh ...

  8. 分享10个站内优化技巧 - 孔宇SEO

    SEO的核心主要是看站内的优化,如果站内的优化不到位,站外优势再强,排名还是不会改变,因为跳出率和退出率太大了,如果站内能够配合SEO外链来做SEO优化,那么效果相当明显.下面分享10个站内优化技巧, ...

  9. [译] 原生 JavaScript 值得学习吗?答案是肯定的

    原文地址:Is Vanilla JavaScript worth learning? Absolutely. 原文作者:David Kopal 译文出自:掘金翻译计划 本文永久链接:github.co ...

最新文章

  1. java中 resource_Java从Resource中读取文本文件
  2. 面试:知道 CopyOnWriteArrayList 吗?
  3. 剑指offer:二叉树的镜像
  4. 增强for循环,Map,集合应用
  5. FLutter入门:异步加载组件FutureBuilder
  6. php显示发件人地址吗,php – 发件人地址被拒绝
  7. 要想能安心,必须先死心。
  8. 一台服务器上部署多个Terracotta的方法
  9. 14岁考入北大少年班,如今节衣缩食上课穿胶鞋,却慷慨资助贫困生
  10. excel中如何动态地创建控件以显示查询结果_Excel催化剂开源第23波-VSTO开发辅助录入功能...
  11. 信息学奥赛C++语言:枪声问题
  12. 后端接口都测试什么?怎么测?
  13. Redis 常用命令
  14. mysql安装包及安装教程(附网盘地址)
  15. 海康威视复赛题 --- 算法说明书
  16. Android显示gif格式图片
  17. 计算机滴滴响重启,电脑发出滴滴声是什么原因(常见的4个故障和解决方法)...
  18. 黑苹果睡眠唤醒usb失灵_黑苹果解决USB3.0驱动问题
  19. 太火爆了!这一款小游戏火到把服务器搞瘫痪,合成大西瓜
  20. FuntouchOS跟鸿蒙系统,FuntouchOS10.5安装包

热门文章

  1. 【Git报错】 ! [rejected] master - master (fetch first)
  2. python.day.10——面向对象(二)
  3. Hadoop: MapReduce2多个job串行处理
  4. linux 查看文件内容的几种命令
  5. SQL Server 表分区实战系列(文章索引)
  6. HDU 4411 Arrest(费用流)
  7. 咨询公司建议完美批准私有化
  8. IB网络用户数量超过私有网络近4倍
  9. 字节流InputStream/OutputStream
  10. Powershell RESTAPI 访问Office365