読者です 読者をやめる 読者になる 読者になる

シングルクォートと文字列の間に半角スペースが。。。

よくわからない現象に悩まされた。

1. javascriptで生成したjsonのコードをinnerHTMLにて画面に表示。
2. マウスで対象部分をdragしてcopy。
3. エディタでhtmlにpaste。

最初の一行目は問題ないが、二行目以降、シングルクォートと文字列の間に半角スペースが入ってしまう。以下は貼り付け後のソースコード例。

var DATA = {
  'm04' : {
    '文字列その1' : [1111, 2222, '<object width="300" height="251">....</object>'],
    ' 文字列その2' : [3333, 4444, '<object width="300" height="251">....</object>'],
    ' 文字列その3' : [5555, 6666, '<object width="300" height="251">....</object>'],
    ....

最初は自分のjavascriptを疑って、firebugなどでdebugしていたが、半角スペースが入る余地なし。

いろんなことをやった挙句、一行が長い(例だとobject要素の分が長い)とそうなるのでは?と思い、途中で改行するようにしてみたところ、解決してしまった。

var DATA = {
  'm04' : {
    '文字列その1' : [1111, 2222,
      '<object width="300" height="251">....</object>'],
    '文字列その2' : [3333, 4444,
      '<object width="300" height="251">....</object>'],
    '文字列その3' : [5555, 6666,
      '<object width="300" height="251">....</object>'],
    ....

うーん、丸一日悩んでしまった。