作者nnlisalive (nnlisalive)
看板Web_Design
標題[問題] package.json內的description不能換行?
時間Fri Sep 1 17:34:22 2017
編輯package.json碰到的問題請看圖片
http://i.imgur.com/tk8aiMD.jpg
node執行的是以下這個js檔
//usemypackage.js
----------------------------------------
const myapp=require('./somepackage');
myapp.sayHello();
myapp.sayHelloTwice();
myapp.eatLunch();
myapp.eatDinner();
----------------------------------------
只要沒換行就能正常呼叫那4個函數 顯示4行字串
問題出在json檔裡面的description後面 換行就出現錯誤
"description":"這裡不能換行喔@@?", --->正常執行
"description":"這裡不能
換行喔@@?", --->有換行 出錯!
為什麼阿????
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.173.252.61
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Web_Design/M.1504258464.A.79A.html
1F:→ ssccg: json的string裡本來就不能換行 09/01 17:43
2F:→ ssccg: 是說也沒看過別的語言可以像你寫的這樣換行... 09/01 17:53
3F:→ ssccg: 像C要在後面加\,或是每行都是前後都有" 09/01 17:55
4F:→ nnlisalive: 所以規範就是不能換行 換行就是另一行程式碼的意思? 09/01 17:55
5F:→ ssccg: 或有些語言用'''、有些用`就能多行,不過總之json不能 09/01 18:00
6F:→ nnlisalive: 結論是不能因為放在""裡面就安心換行 這是JSON的規範 09/01 18:01
7F:→ nnlisalive: 這樣嗎? 09/01 18:01
8F:→ ssccg: 是,而且反而是""外的可以任意換行加空白 09/01 18:07
9F:推 spfy: 這應該是大部分語言都會放在最開頭告訴新手的事情之一... 09/01 21:52
10F:→ spfy: 我也很好奇哪個語言能直接換行...C#需要+號連接或開頭放@ 09/01 21:53
11F:→ dannypsnl: Elixir可以喔 09/01 21:54
12F:→ hijkxyzuw: json 只能有 \n 不能實際換行 09/02 00:08
13F:推 s25g5d4: 語言跟資料表示要分開來看,JSON 是一種格式但不是 09/03 03:47
14F:→ s25g5d4: JavaScript,不然 JS 有最新的 template string 可以在字 09/03 03:48
15F:→ s25g5d4: 串裡放真的換行 09/03 03:48