您的位置:首页 - 教程 - JavaScript - 正文
js对象、数组转换字符串

对象转换成字符串需要使用toString()方法。

 var a = function(){
    console.log(111);
};
var b = a.toString();
console.log(a); 函数式的function
console.log(b); 字符串function
console.log(typeof a); >>function
console.log(typeof b); >>string

 

数组转换字符串 1.0

 var a = [1,2,3];
var b = a.toString();
console.log(a); >>[1,2,3]
console.log(b); >>"1,2,3"

当我们进行与原始值比较的时候,它们会自动调用toString方法。(+,-,!=,==都会进行转换。)

 

数组转换字符串 2.0

 // var a = [1,2,3];
 // console.log(a.join()); >>1,2,3

toString()与join()的比较

 // var a = [1,2,3];
 // console.log(a.join()); >>1,2,3
 // console.log(a.toString()); >>1,2,3
 // console.log(a.toString("-")); >>1,2,3
 // console.log(a.join("-")); >>1-2-3

join用法的升级版

 var a = [1,[1,2]];
console.log(a.join("-"));  >>1-1,2

我想把全部数组的值都用-分割,但是如果是多维数组,显然直接这样是不行的,但是我们可以通过一个小技巧就可以完美实现。

 var a = [1,[1,2]];
console.log(a.join(",").split(",").join("-")); >>1-1-2

首先把多维数组转换成全部用,分割开的字符串,然后再将字符串转换成数组,最后在用“-”分割就可以达到我们的目的了。

如果还是不清楚,我来看看它的转换过程。

 var a = [1,[1,2]];
// console.log(a.join(",")); >>"1,1,2"
// console.log("1,1,2".split(",")); >>["1", "1", "2"]
// console.log(["1", "1", "2"].join("-")); >>1-1-2

评论: