[3, 4, 5]
['4', '1', 'abc123']
function combine_ids(ids){
return ids.join(',');
};
无论什么类型的列表,我希望我的函数返回一个字符串,其中包含单引号。
该函数应该返回:
'3','4','5'
和
'4','1','abc123'
我希望我的结果字符串中包含单引号!
答案 0 :(得分:16)
简单的逻辑!
function combine_ids(ids) {
return (ids.length ? "'" + ids.join("','") + "'" : "");
}
console.log(combine_ids([]));
console.log(combine_ids([3]));
console.log(combine_ids([3, 4, 'a']));
示例输出:
(an empty string) '3' '3','4','a'
答案 1 :(得分:1)
如何将单引号放在我刚刚“加入”的数组周围?
您的方法似乎不必要地复杂。你最好:
toString
和引用join
中间数组[03:22:35.728] [3, 4, 5].map( function (element) { return "'" + String(element) + "'" } ).join(",")
[03:22:35.736] "'3','4','5'"
--
[03:22:58.925] ['4', '1', 'abc123'].map( function (element) { return "'" + String(element) + "'" } ).join(",")
[03:22:58.933] "'4','1','abc123'"
注意:map
方法需要JS 1.6+,以下版本要求您“手动”迭代数组:
function combine_ids( array ) {
var tmp = [];
for ( var i = 0; i < array.length; i++ ) {
tmp[i] = "'" + String( array[i] ) + "'";
}
return tmp.join(",");
}
答案 2 :(得分:0)
像:
function myjoin(arr) {
return "'" + arr.join("','") + "'";
}