js 字符串相关方法

js 数字数组转换成字符串数组
1.如何不使用遍历把字符串数组转换成数字数组
2.例子 : [0,1,2,3,4,5,6,7,8,9] => [‘1’,’2’,’3’,‘4’,‘5’,‘6’,‘7’,‘8’,‘9’]
解决方法
[0,1,2,3,4,5,6,7,8,9].map(String)
Js 字符串中提取数字
1.parseInt()方法:
var data =“6454545456454545(某某某)”;

var num = parseInt(data);

alert(num);//6454545456454545

结果就是我们想要的, 以为就这么简单,那就错了。如果字符串前面有非数字字符,上面这种方法就不行了:   

var data ="卡号:6454545456454545";

var num = parseInt(data);

alert(num);//NaN

二、正则

前面说到正则。事实上,正则处理起来就比较简单了,替换掉非数字的字符就可以了。例子:

var data =“6454545456454545(某某某)”;

var num= data.replace(/[^0-9]/ig,"");

alert(num);//6454545456454545

如果遇到字符夹带数字的情况:

var data =“奥斯丁6454545456454545(某某某2)”;

var num = data.replace(/[^0-9]/ig,"");

alert(num);//6454545456454545

将对象的属性值添加到新的数组里

<script>
    var arr = []
    var obj = {a: 1, b: 2,c: 3}
    console.log(Object.keys(obj));
    //获取value(这样可以同时访问值)
    Object.keys(obj).forEach(function (key) {
        console.log('key: ' + key + ' ,value: ' + obj[key]);
        arr.push(obj[key])
    });
    console.log(arr);
</script>

对字符串和数组根据Aa-Zz排序

<script>
    // 对字符串和数组根据Aa-Zz排序
   function stringSort(str) {
            if(typeof str === 'string')
                str = str.split(',');
            if (!Array.isArray(str)) {
                console.log('参数类型错误, 必须为数组或以(,)分割的字符串.')
                return str;
            }
            str.sort();
            return str.join();
        }
        //测试
        var test1 = ["BB000:asd", "AB621:asda", "C752B:8912", "AC700:9182", "D5657:12837"];
        console.log(stringSort(test1));
        var test2 = "BB000,AB621,C752B,AC700,D5657,asdsds,aadsds";
        console.log(stringSort(test2));
</script>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章