小程序/js中用到的一些数据操作

这里主要是记录一些常用的数据操作

  • 生成随机数的算法
function getGUID() {
  return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxx'.replace(/[xy]/g, function (c) {
    var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);
    return v.toString(16);
  }).toUpperCase();
}
  • 去除输入框的空格,返回最终的内容
function delTheInputBlank(e) {
  var str = e.detail.value;
  var length = str.length;
  var lastString = str.substr(length - 1, 1);
  if (lastString == " ") {
    var text = str.substr(0, length - 1);
    return text
  } else {
    return str
  }
}

这个是在输入框输入的时候(bindinput的时候)调用

  • 去除首尾的空格
function trim(s) {
  return s.replace(/(^\s*)|(\s*$)/g, "");
}

这里还有一些其他的去掉空格操作:js 去掉字符串前后空格

  • 数组的一些操作

    1、join() — 将数组中所以元素都转化为字符串链接在一起,返回最后生成的字符串
    Array.join()方法将数组中所以元素都转化为字符串链接在一起,返回最后生成的字符串。也可以指定可选的字符串在生成的字符串中来分隔数组的各个元素。如果不指定分隔符,默认使用逗号。案例如下:

     var a=[1,2,3];
     a.join();//=> "1,2,3" 因为没有指定分隔符,默认为逗号。
     a.join("+");//=> "1+2+3" 指定分隔符为+
     a.join("-");//=> "1-2-3" 指定分隔符为-
    

    Array.join()方法是String.split()方法的逆操作,后者是将字符串分割成若干块创建一个数组。

    2、 reverse() — 将数组中元素进行倒叙,返回倒叙的数组
    Array.reverse()方法将数组中元素进行倒叙,返回倒叙的数组,它是在原来数组中进行倒叙,不产生的新数组,返回就是原来的数组,只不过里面元素已经进行倒叙重排了。案例如下:

     var a=[1,2,3];
     a.reverse();// =>a=[3,2,1]; 
    

    3、sort() — 将数组中的元素排序,并返回排序好的数组
    Array.sort()方法将数组中的元素排序,并返回排序好的数组。如果不传参数默认以字母表顺序进行排序。案例如下:

     var a=[4,3,1,2]
     a.sort();// =>[1,2,3,4]
     a.sort(function(a,b){return a-b;});//=>[1,2,3,4] 降序排列
     a.sort(function(a,b){return b-a;});//=>[4,3,2,1] 升序排列
    

    这里使用匿名函数很方便,因为函数只使用一次就没有必要给函数命名了。

    4、concat() — 合并/创建并返回一个新数组
    Array.concat()方法创建并返回一个新数组,新数组中的元素包含调用数组的元素和concat()中传入参数的值,传入的参数可以是单独数值,也可以是数组,concat()不会递归扁平化数组的数组。案例如下:

    var a=[5,6,7];
    a.concat(1,2);// =>[5,6,7,1,2];
    a.concat([1,2]);// =>[5,6,7,1,2];
    a.concat(3,[1,2]);// =>[5,6,7,3,1,2];
    a.concat([1,[2,3]]);// =>[5,6,7,1,[2,3]]; 
    

    5、slice() — 返回指定数组的一个片段或子数组
    Array.slice()方法返回指定数组的一个片段或子数组。里面可以传一个参数或两个参数,参数可以为正也可以为负。案例如下:

    var a=[5,6,7,3,1,2];
    a.slice(1)// =>[6,7,3,1,2] 数字参数指的是数组的索引,一个参数表示开始的位置,不传第二个参数默认为数组中元素个数。
    a.slice(1,3)// =>[6,7] 第二参数是数组索引结束位置,(不包含) index>=1&&index<3;
    a.slice(1,-3)// =>[6,7] 当参数中有负数时候,可以进行转换正数,方法就是-3+6(数组里元素个数)
    a.slice(-3,-2)// =>[3] 同理如上。 
    

    6、splice() — 在数组中插入或删除的通用方法
    Array.splice()方法是在数组中插入或删除的通用方法。它会修改调用的数组,splice()可以传入三个参数,第一参数表示删除元素索引开始的地方,第二参数表示删除元素总数,第三参数,表示插入的元素,元素插入的位置就是删除元素开始的位置。案例如下:

     var a=[5,6,7,3,1,2];
     a.splice(2);// =>[7,3,1,2] a=[5,6];//传入一个参数表示从索引开始删除之后所有的元素。
     a.splice(2,2);// =>[7,3]   a=[5,6,1,2];第二个参数表示删除元素的个数。
     a.splice(2,2,'a','b','c'); //=>[7,3] a=[5,6,'a','b','c',1,2]; 
    

    7、push() 和 unshift()
    Array.push()方法就是向数组最后面添加元素,它返回的是新数组的长度。
    Array.unshift()方法就是向数组最前面添加元素,返回的是新数组的长度。

     var a=[1,2,3];
     a.push(4,5);// a=[1,2,3,4,5]; 返回 值为5;
     a.unshift(4,5);// a=[4,5,1,2,3]; 返回 值为5;☆传的参数可以一个,也可以多个。
    

    8、pop() 和 shift()
    Array.pop()方法就是删除数组中最后一个元素,它返回是删除的元素。
    Array.shift()方法是删除数组最前面的元素,返回是删除的元素。

     var a=[5,6,7];  
     a.pop();// a=[5,6]; 返回值为 7  
     a.shift();// a=[6,7]; 返回值 5
    

深入一些的了解可以看看:JS合并数组的几种方法及优劣比较

  • 字符串的一些操作

这里已经懒得自己想了,我们就来传送吧!!!
Javascript中字符串和数字的操作方法整理

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342

推荐阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 10,849评论 6 13
  • Javascript有很多数组的方法,有的人有W3C的API,还可以去MDN上去找,但是我觉得API上说的不全,M...
    顽皮的雪狐七七阅读 4,060评论 0 6
  • 第三章 类型、值和变量 1、存取字符串、数字或布尔值的属性时创建的临时对象称做包装对象,它只是偶尔用来区分字符串值...
    坤少卡卡阅读 626评论 0 1
  • 数组是一种可变的、可索引的数据集合。在Scala中用Array[T]的形式来表示Java中的数组形式 T[]。 v...
    时待吾阅读 938评论 0 0
  • 最近看了些佛门书,好多智慧难以参透。有一个好处要说一下,明了了佛机可以让我们在无常的人生中,准备好接受一切无常!
    滚石232老茂阅读 200评论 1 1