给定一个数组,如:['a', 'b']
我想得到'a','b'- 这是因为我想将该结果插入到INsql 查询中。我试过myVar.join(',')了,但没有'a,b'返回'a', 'b'。
给定一个数组,如:['a', 'b']
我想得到'a','b'- 这是因为我想将该结果插入到INsql 查询中。我试过myVar.join(',')了,但没有'a,b'返回'a', 'b'。
只需使用 map 在每个元素上加上引号,然后加入。
console.log(['a','b'].map(a=>"'"+a+"'").join(","))
在这里学习所有 Array 方法:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map
你可以试试这个,不是那么优雅,但它有效..
var letters = ['a', 'b'];
letters = '\''+letters.join('\',\'')+'\'';
alert(letters);
如果你可以使用 ES6/ES2015,你可以去:
const myQuery = `'${myVar.join("','")}'`;
<script>
var array = ['a', 'b'];
console.log(convertArray(array));
function convertArray(arr){
var str = "";
for(let i = 0; i < arr.length; i++){
if(i+1<arr.length){
str += "'"+arr[i]+"',";
} else {
str += "'"+arr[i]+"'";
}
}
return str;
}
</script>