回答編集履歴

2

CSV出力コードを追加

2016/08/30 06:55

投稿

think49
think49

スコア18166

test CHANGED
@@ -1,6 +1,10 @@
1
- `Object.values` というものがあります。
1
+ ES7 に `Object.values` というものがあります。
2
2
 
3
+ 未対応ブラウザ用にPolyfillを適用するとして、`Array#join` と組み合わせればスマートに実装出来ます。
4
+
5
+
6
+
3
- https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Object/values
7
+ - [Object.values() - JavaScript | MDN](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Object/values)
4
8
 
5
9
 
6
10
 
@@ -10,11 +14,9 @@
10
14
 
11
15
  console.log(Object.values(obj)); // ['bar', 42]
12
16
 
17
+ console.log(Object.values(obj).join(',')); // bar,42
18
+
13
19
  ```
14
-
15
-
16
-
17
- 未対応ブラウザ用にPolyfillを適用するとして、`Array#join` と組み合わせればスマートに実装出来ますね。
18
20
 
19
21
 
20
22
 
@@ -24,4 +26,16 @@
24
26
 
25
27
 
26
28
 
29
+ ```JavaScript
30
+
31
+ var obj = {foo: 'hoge,bar', baz: '"piyo"'},
32
+
33
+ csv = '"' + Object.values(obj).map(function (value) { return value.replace(/"/g, '""'); }).join('","') + '"';
34
+
35
+ console.log(csv); // "hoge,bar","""piyo"""
36
+
37
+ ```
38
+
39
+
40
+
27
41
  Re: azuno_mix さん

1

プロパティ値にカンマを含んではいけない

2016/08/30 06:55

投稿

think49
think49

スコア18166

test CHANGED
@@ -18,4 +18,10 @@
18
18
 
19
19
 
20
20
 
21
+ ただし、プロパティ値がカンマを含まない事が必要条件としてあります。
22
+
23
+ カンマを含むならCSVのようにダブルクォートで括るフォーマットが必要になりますね。
24
+
25
+
26
+
21
27
  Re: azuno_mix さん