为什么字符串([1,2])==“;1,2”;而不是“;[1,2]”;
Why does String([1,2])=="1,2" and not "[1,2]"?
我想做的是更改一个数组,比如
[1,2,[3,4],17.5]
像一样刺痛
"[1,2,[3,4],17.5]"
但不像
"1,2,3,4,17.5"
即保留所有的括号。我试着使用内置的String()函数,但这给了我"1,2,3,4,17.5"。有没有内置的函数或代码片段可以用来获得"[1,2,[3,4],17.5]"
谢谢
您想要一个JSON字符串:
array = [1,2,[3,4],17.5];
JSON.stringify( array );
请参阅此问题:
将JS对象转换为JSON字符串
不适用于IE 7及更低版本!
如果您不担心与其他代码段发生冲突,您可以更改Array.prototype.toString
(function () {
var arrayString = Array.prototype.toString;
Array.prototype.toString = function toString() {
return '[' + arrayString.call(this) + ']';
}
}());
[1,2,[3,4],17.5].toString();
// "[1,2,[3,4],17.5]"
如果您不想使用json,我相信您可以创建一个简单的方法来实现这一点,以下内容:
(function toBracketedString(arr) {
if (!_.isArray(arr)) { return ""; }
var base = "[";
for (var element in arr){
base.append(","+element.toString());
}
base.append("]");
});
希望这能帮助
相关文章:
- 为什么我的javascript程序没有将其转换为整数而不是字符串
- 为什么脚本标记被分解为两个字符串
- 为什么错误不能字符串化
- 为什么字符串在 ES2015 中是可迭代对象
- 为什么字符串与数字的比较在Javascript中有效
- 为什么字符串类型返回功能
- 为什么字符串搜索的参数表现得像Regex
- 为什么字符串“11”比字符串“3”小
- 为什么字符串的排序在 JavaScript 中如此奇怪
- 为什么字符串在一定间隔内不移动
- 为什么字符串(空)有效
- 为什么字符串([1,2])==“;1,2”;而不是“;[1,2]”;
- 为什么字符串化的JSON是有效的字符串
- 为什么字符串搜索对某些字符串有效而对其他字符串无效
- 为什么字符串上的 + + 会产生奇怪的结果
- 为什么字符串变量可以通过JS中的调用使用forEach方法
- 为什么字符串.原型替换在嵌套函数中不起作用
- 为什么字符串连接比数组连接快?
- 为什么字符串中的反斜杠()在控制台中出现错误
- 为什么字符串.Match (/ d*/)返回一个空字符串