1.去除字符串空格

/*去左空格*/
function ltrim(s) {
return s.replace(/^(\s*| *)/, "");
} /*去右空格*/
function rtrim(s) {
return s.replace(/(\s*| *)$/, "");
} /*去左右空格*/
function trim(s) {
return ltrim(rtrim(s));
}

2.获取url地址栏参数

function getUrlQueryParam(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
var value = '';
if (r != null) {
value = decodeURIComponent(r[2]);
}
return value;
}

3.数字千分位转换

/*数字格式转换成千分位*/
function numToMicrometer(num) {
if (trim(num + "") == "") {
return "";
}
if (isNaN(num)) {
return "";
}
num = num + "";
if (/^.*\..*$/.test(num)) {
varpointIndex = num.lastIndexOf(".");
varintPart = num.substring(0, pointIndex);
varpointPart = num.substring(pointIndex + 1, num.length);
intPart = intPart + "";
var re = /(-?\d+)(\d{3})/
while (re.test(intPart)) {
intPart = intPart.replace(re, "$1,$2")
}
num = intPart + "." + pointPart;
} else {
num = num + "";
var re = /(-?\d+)(\d{3})/
while (re.test(num)) {
num = num.replace(re, "$1,$2")
}
}
return num;
} /*去除千分位*/
function delMicrometer(num) {
if (trim(num + "") == "") {
return "";
}
num = num.replace(/,/gi, '');
return num;
}

4.获取给定字符串占用的字节长度

function getByteLen(val) { // 传入一个字符串
var len = 0;
for (var i = 0; i < val.length; i++) {
if (val[i].match(/[^\x00-\xff]/ig) != null) // 全角
len += 2; // 如果是全角,占用两个字节
else
len += 1; // 半角占用一个字节
}
return len;
}

5.构建url参数

/*
param = {
name1 : value1,
name2 : value2,
...
}
*/
function buildParam(param) {
var paramContent = '';
try {
if (!empty(param)) {
for (var key in param) {
paramContent += key + '=' + encodeURIComponent(param[key])
+ '&';
}
}
} catch (e) {
}
return paramContent;
}

6.判断变量是否空值 undefined, null, '', false, 0, [], {} 均返回true,否则返回false

function empty(v) {
switch (typeof v) {
case 'undefined' :
return true;
case 'string' :
if (trim(v).length == 0)
return true;
break;
case 'boolean' :
if (!v)
return true;
break;
case 'number' :
if (0 === v)
return true;
break;
case 'object' :
if (null === v)
return true;
if (undefined !== v.length && v.length == 0)
return true;
for (var k in v) {
return false;
}
return true;
break;
}
return false;
}

7.去除html标签

/*去除html标记*/
function removeHtmlTag(str) {
return str.replace(/<[^>]+>/g, "");
}

8.获取url参数(返回数组类型)

function getRequestParam(param) {
var url = location.search; // 获取url中"?"符后的字串
var paramStr = new Array(); if (url.indexOf("?") != -1) {
var str = url.substr(1);
strs = str.split("&");
for (var i = 0; i < strs.length; i++) {
if (param == strs[i].split("=")[0]) {
paramStr.push(strs[i].split("=")[1]);
}
}
}
return paramStr;
}

9.指定字符高亮

function setHighLightText(txt, currentTargetText) {
if (empty(txt)) {
return '';
}
var newTxt = txt;
if (currentTargetText.length != 0) {
$(currentTargetText).each(function(i) {
var reg = new RegExp(currentTargetText[i], "g");
newTxt = newTxt.replace(reg, "<em>" + currentTargetText[i]
+ "</em>");
});
}
return newTxt;
}

10.替换url中的指定参数

function changeURLArg(url, paramName, paramName_val) {
var pattern = paramName + '=([^&]*)';
var replaceText = paramName + '=' + paramName_val;
if (url.match(pattern)) {
var tmp = '/(' + paramName + '=)([^&]*)/gi';
tmp = url.replace(eval(tmp), replaceText);
return tmp;
} else {
if (url.match('[\?]')) {
return url + '&' + replaceText;
} else {
return url + '?' + replaceText;
}
}
return url + '\n' + paramName + '\n' + paramName_val;
}

javascript 实用函数的更多相关文章

  1. javascript实用技巧、javascript高级技巧

    字号+作者:H5之家 来源:H5之家 2016-10-31 11:00 我要评论( ) 三零网提供网络编程. JavaScript 的技术文章javascript实用技巧.javascript高级技巧 ...

  2. 【前端】Util.js-ES6实现的常用100多个javaScript简短函数封装合集(持续更新中)

    Util.js (持续更新中...) 项目地址: https://github.com/dragonir/Util.js 项目描述 Util.js 是对常用函数的封装,方便在实际项目中使用,主要内容包 ...

  3. Javascript 随机数函数 学习之一:产生服从均匀分布随机数

    大家都知道Math.random是 javascript 中返回伪随机数的函数,但查看 MDN, The Math.random() function returns a floating-point ...

  4. jQuery碎语(4) 实用函数

    6.实用函数 ● 修剪字符串 $('#id').val($.trim($('#someid').val())) ● 遍历集合 可能这样写: var anArray = ['one','two']; f ...

  5. JavaScript中函数函数的定义与变量的声明<基础知识一>

    1.JavaScript中函数的三种构造方式 a.function createFun(){ } b.var createFun=function (){ } c.var createFun=new ...

  6. 你真的会玩SQL吗?实用函数方法汇总

    你真的会玩SQL吗?系列目录 你真的会玩SQL吗?之逻辑查询处理阶段 你真的会玩SQL吗?和平大使 内连接.外连接 你真的会玩SQL吗?三范式.数据完整性 你真的会玩SQL吗?查询指定节点及其所有父节 ...

  7. 理解 JavaScript 回调函数并使用

    JavaScript中,函数是一等(first-class)对象:也就是说,函数是 Object 类型并且可以像其他一等对象(String,Array,Number等)一样使用.它们可以"保 ...

  8. 5种 JavaScript 调用函数的方法

    一次又一次的,我发现,那些有bug的Javascript代码是由于没有真正理解Javascript函数是如何工作而导致的(顺便说一下,许多那样的代码是我写的).JavaScript拥有函数式编程的特性 ...

  9. 转:Delphi 6 实用函数

    来自: daocaoren0824, 时间: -- ::, ID: 再给你一份 程序员实用函数 {▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎} {▎ ▎} {▎ 大 ...

随机推荐

  1. WPF学习笔记-如何按ESC关闭窗口

    如何按ESC关闭窗口? 在InitializeComponent();下面增加KeyDown事件,如: public ModifyPrice() { InitializeComponent(); th ...

  2. cf B George and Round

    题意:输入n,m,下一行为n个数a1<a2<a3......<an:然后再输入m个数b1<=b2<=b3<.....<=bm: 每个ai都必须在b中找到相等的 ...

  3. Android Wear开发 - 数据通讯 - 第三节 : 事件处理

    http://developer.android.com/training/wearables/data-layer/events.html 以下是本人在学习官方开发文档时的笔记,主要是翻译为主,并在 ...

  4. android如何获取默认的桌面程序

    [方法1] http://stackoverflow.com/questions/12594192/remove-activity-as-default-launcher/12594332#12594 ...

  5. div大小如何改变设置

    如果改变更改div大小尺寸. 首先我们要知道DIV大小是由高和宽确定,要修改DIV容积大小我们设置css宽度和css高度即可实现改变DIV盒子大小. 一.改变div大小实例 为了实验便于观察DIV盒子 ...

  6. Java this 心得

    用类名定义一个变量的时候,定义的应该只是一个引用,外面可以通过这个引用来访问这个类里面的属性和方法,那们类里面是否也应该有一个引用来访问自己的属性和方法纳?呵呵,JAVA提供了一个很好的东西,就是 t ...

  7. POJ-1330--Nearest Common Ancestors(离线LCA)

    LCA离线算法 它需要一次输入所有的询问,然后有根节点开始进行深度优先遍历(DFS),在深度优先遍历的过程中,进行并查集的操作,同时查询询问,返回结果. 题意: 求A ,B两点的最近公共祖先 分析: ...

  8. 【贪心】HDU 5783 Divide the Sequence

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5783 题目大意: 把一个N个数的数列拆成若干段,保证每一段的前缀和都非负,求最多能拆成多少段. 题目 ...

  9. C#在父窗口中调用子窗口的过程(无法访问已释放的对象)异常,不存在从对象类型System.Windows.Forms.DateTimePicker到已知的托管提供程序本机类型的映射。

    一:C#在父窗口中调用子窗口的过程(无法访问已释放的对象)异常 其实,这个问题与C#的垃圾回收有关.垃圾回收器管 理所有的托管对象,所有需要托管数据的.NET语言(包括 C#)都受运行库的 垃圾回收器 ...

  10. Delphi NativeXml读取中文乱码问题解决

    NativeXml默认的字符类型为Utf8String,有时在读取中文时还是会出现乱码问题,在329版本中提供一种类型转换函数sdUtf8ToWide(),我们可以这样sdUtf8ToWide(AXm ...