0

次の形式の Javascript 配列があります。

["One","Two","Three"]

これを次の形式の文字列にしたい。

('One','Two','Three')

私は次のことを試しました; しかし、それは言います(これは配列TypeError: arr.replace is not a functionだからだと思います)arr

 arr=arr.replace("[","(");
arr=arr.replace("]",")");

上記のように文字列[ " ]をどのように置き換えることができますか。( ' )

4

4 に答える 4

1

あなたが使用することができますArray.join()

> var a = ["One","Two","Three"];
> "('" + a.join("','") + "')"
"('One','Two','Three')"
于 2012-10-18T07:23:50.617 に答える
1

まあ、配列では .replace を使用できません。ただし、次のことができます

var arr = ["One","Two","Three"];
    arr = "('" + arr.join("', '") + "')";
于 2012-10-18T07:24:11.447 に答える
0

配列インスタンスではなく、文字列に変換する必要があります。これを試して

arrStr = arr.toString();
arrStr=arrStr.replace("[","(");
arrStr=arrStr.replace("]",")"); 

編集私は間違って覚えていました、これは適切な結果を提供しませんでした...出力は次のようになります:

One,Two,Three.

推奨される解決策は、最初に@Blenderによって投稿され、アレイパーツを結合し、必要な開閉ブラケットを追加します...

replace()のみを使用してこれを解決する必要がある場合、これは適切な結果を取得します。

arrStr = arr.toString();
arrStr=arrStr.replace(",","','");
arrStr = "('" + arrStr "')";
于 2012-10-18T07:23:55.330 に答える
0

このコードを使用して、配列を文字列に変換できます

var arr = ["One","Two","Three"]​;
var str = "('"+arr.join("','")+"')";
alert(str);
​

フィドルデモ

于 2012-10-18T07:25:39.460 に答える