最近工作总会用到相关数组处理方法以及转换数据类型等,有时候记不住,整理一些
目录
js数组、对象、字符换数据类型转换
1.数组转字符串:
//1.toString() 也可以数字转换为字符串
var a = [1,2,3,4,5,6,7,8,9,0]; //定义数组
var s = a.toString(); //把数组转换为字符串
console.log(s,typeof(s)); //返回字符串“1,2,3,4,5,6,7,8,9,0” string类型
//2.toLocaleString()
console.log('1.当数字是四位数及以上时,有区别,三位搁一个逗号,2.当目标是标准时间格式时,用以上两种方法是有区别的')
var time=new Date();
time.toString;
console.log(time);//Wed Feb 15 2017 11:21:31 GMT+0800 (CST)
time.toLocaleString();
console.log(time);//"2017/2/15 上午11:21:31"
//3.join('') 个人理解join转换相当于把数组分割成字符串,''里面是拼接的符号
var a = [1,2,03,40,];
var s = a.join('-');
console.log(s,typeof(s)); //返回字符串“1-2-03-40” string类型
//4.for循环
var arr = [74,85,49,0,50,0,51,0];
var s = "";
for(var i=0;i<arr.length ;i++){
if(i>0){
s +=','+a[i]; //相当于一个一个往s里面加入
}else{//74前面不用拼接
s +=a[i];
}
}
console.log(s);//打印出74,85,49,0,50,0,51,0
2.字符串转数组
//1.split('')
var str = "abc,abcd,aaa";
arr = str.split(",");// 在每个逗号(,)处进行分解。
console.log(arr)//["abc", "abcd", "aaa"]
arr = str.split("");
console.log(arr)//["a","b" "c",",",.......]
//2.[...string]
const a = '123'
console.log([...a])//(3) ['1', '2', '3']
这里要提到一个方法array.from,也可以实现,这个方法有以下几点功能
1>将类数组对象(有length,属性名必须为数值或字符串型的数字)转换为真正的数组
2> 将set类型数据转换为数组(没用过,用过回来细说)
3>将字符串转换为数组
const a = '1,2,3,4,5'
console.log(Array.from(a))//['1', ',', '2', ',', '3', ',', '4', ',', '5']
3.对象转数组
//1.通过for循环将对象push到数组中
const obj = {
val1:1,
val2:2,
val3:3
}
const arr = []
for(let i in obj){
let obj2 = {}
obj2[i] = obj[i]
arr.push(obj2)
console.log(arr)//[{ val1: 1 }, { val2: 2 }, { val3: 3 }]
}
目前此方法较为实用,还能延伸出多种使用方法,其他的几乎都是类数组对象转换为数组,比如上面提到的array.from,[...]等,不使用,这里暂不提
目前先记录这些比较常用的,后续用到在记录,下一篇记录一下数组操作常用的函数