优质广告供应商

广告是为了更好地支持作者创作

小程序/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中字符串和数字的操作方法整理

优质广告供应商

广告是为了更好地支持作者创作

推荐阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 9,064评论 6 13
  • Javascript有很多数组的方法,有的人有W3C的API,还可以去MDN上去找,但是我觉得API上说的不全,M...
    顽皮的雪狐七七阅读 3,607评论 0 6
  • 优质广告供应商

    广告是为了更好地支持作者创作

  • 第三章 类型、值和变量 1、存取字符串、数字或布尔值的属性时创建的临时对象称做包装对象,它只是偶尔用来区分字符串值...
    坤少卡卡阅读 444评论 0 1
  • 数组是一种可变的、可索引的数据集合。在Scala中用Array[T]的形式来表示Java中的数组形式 T[]。 v...
    时待吾阅读 780评论 0 0
  • 最近看了些佛门书,好多智慧难以参透。有一个好处要说一下,明了了佛机可以让我们在无常的人生中,准备好接受一切无常!
    滚石232老茂阅读 139评论 1 1
  • 张冠李戴(原创) 老头在东市,小孩在西市,东市卖铃铛,西市卖烟袋;老头看着铃铛想烟袋,小孩想着...
    秋色文学烈火的轻云阅读 145评论 0 0
  • 优质广告供应商

    广告是为了更好地支持作者创作

  • 当你找不到自己,温暖的阳光找不亮你心中的死灰; 当你找不到自己,黄鹂的叫声唱不醒你心中的哀鸣; 当你找不到自己,眼...
    Elvis李伟阅读 139评论 4 1
  • 进度:全部读完,3番茄(最后两章跳读,因为作者又开始扯坡道,价值不大) 发售:正式发售开始后作者提到了5封邮件的功...
    给小老板读商业书阅读 377评论 0 6
  • 简单的访问行为统一了复杂的Zika暴发; 多元俱乐部:复杂网络的集成核心; 不对称渗透驱动性接触网络的双重过渡; ...
    ComplexLY阅读 571评论 0 50