หลายสตริงใน JSON


656

ฉันกำลังเขียนไฟล์ข้อมูลบางอย่างในรูปแบบ JSON และต้องการให้ค่าสตริงที่ยาวมาก ๆ แบ่งออกเป็นหลายบรรทัด การใช้โมดูล JSON ของ python ฉันได้รับข้อผิดพลาดมากมายไม่ว่าฉันจะใช้\หรือ\nหลบหนี

เป็นไปได้ไหมที่จะมีสตริงหลายบรรทัดใน JSON? ส่วนใหญ่เพื่อความสบายตาดังนั้นฉันคิดว่าฉันสามารถเปิดการตัดคำในตัวแก้ไขของฉัน แต่ฉันแค่อยากรู้อยากเห็น ...



1
จัดโครงสร้างข้อมูลของคุณ: แบ่งสตริง multiline เป็นอาร์เรย์ของสตริงจากนั้นเข้าร่วมในภายหลัง
RubyTuesdayDONO

2
ลองใช้เครื่องมือ hjson มันจะแปลง Multiline String ของคุณในรูปแบบ json ให้เป็นรูปแบบ json ที่เหมาะสม
gaurav

การทำสำเนาที่เป็นไปได้ของค่า JSON ประกอบด้วยสตริงหลาย
บรรทัด

คำตอบ:


403

JSONไม่อนุญาตการขึ้นบรรทัดใหม่ คุณต้องแทนที่ตัวแบ่งบรรทัดทั้งหมดด้วย\nคุณต้องแทนที่ทั้งหมดแบ่งบรรทัดด้วย

เช่น:

"first line second line"

สามารถบันทึกด้วย:

"first line\nsecond line"

บันทึก:

สำหรับPythonสิ่งนี้ควรเขียนเป็น:

"first line\\nsecond line"

ใช้\\เพื่อหลีกเลี่ยงแบ็กสแลชมิฉะนั้นไพ ธ อนจะถือว่า\nเป็นอักขระควบคุม "บรรทัดใหม่"


89
-1 OP กำลังใช้ลำดับหนี "\ n" มันไม่ทำงานเพราะไม่ได้ใช้เครื่องหมายแบคสแลชในขณะที่ "\\ n" ดังนั้น Python จึงแปลงลำดับการหลบหนีเป็นอักขระขึ้นบรรทัดใหม่แทนที่จะปล่อยให้มันเป็นแบ็กสแลชตามตัวอักษรตามด้วย en ตามที่ JSON ต้องการ
user359996

6
@ user359996 ฉันไม่แน่ใจว่าเป็นจริง สำหรับฉัน (การจัดเก็บข้อมูลใน JSON ด้วยความยุติธรรม\nและแสดงผลผ่าน Curses) \nดูเหมือนว่าจะใช้ได้ ขึ้นอยู่กับเอ็นจิ้นการดู / การแสดงผลดูเหมือน
ashes999

2
ลำดับการขึ้นบรรทัดใหม่เป็นแพลตฟอร์มเฉพาะ (เทียบกับen.wikipedia.org/wiki/Newline#Representations ) อย่างไรก็ตามตาม @Lightness Races ในคำตอบของ Orbit จะไม่มีการส่งคืนเคอร์เซอร์หรืออักขระป้อนบรรทัดในไวยากรณ์ JSON ฉันไม่ใช่โปรแกรมเมอร์ของ Python ดังนั้นฉันจึงไม่แน่ใจว่าเกิดอะไรขึ้นในตัวคุณ แต่ตัวแยกวิเคราะห์ของคุณเสียหรือคุณไม่ผ่านสิ่งที่คุณคิด บางทีคำตอบนี้อธิบายได้ดีกว่า: stackoverflow.com/a/9295597/359996 หมายเหตุเล็กน้อยโดยเฉพาะอย่างยิ่งเกี่ยวกับการหลบหนีสองครั้ง
user359996

5
@Nawaz: "\ n" และ "\ r" เป็นลำดับ escapeสำหรับการป้อนบรรทัดและการขึ้นบรรทัดใหม่ตามลำดับ พวกเขาจะไม่เลื่อนบรรทัดและผลตอบแทนการขนส่งการควบคุมตัวอักษรตัวอักษร เป็นตัวอย่างเพิ่มเติมเพื่อให้ชัดเจนยิ่งขึ้นให้พิจารณาว่า "\\" เป็นลำดับการยกเว้นสำหรับแบ็กสแลชซึ่งตรงข้ามกับแบ็กสแลชตามตัวอักษร ไวยากรณ์ JSON ไม่รวมอักขระควบคุมอย่างชัดเจน (เทียบกับคำจำกัดความ "char") และให้การแสดงแทนผ่านทางลำดับ escape (\\, \ r, \ n, ฯลฯ )
user359996

2
@ user359996: ใช่ .. ฉันเห็นว่าในภายหลังแม้ว่าฉันจะเก็บความคิดเห็นเก่าของฉันไว้เช่นนี้ในกรณีที่มีคนสงสัยเช่นกันการอภิปรายของเราอาจช่วยพวกเขาได้ ขอบคุณที่ยืนยัน BTW
Nawaz

197

ฉันได้มีการทำเช่นนี้สำหรับโครงการขนาดเล็กและ Node.js พบนี้ทำงานรอบ :

{
 "modify_head": [

  "<script type='text/javascript'>",
  "<!--",
  "  function drawSomeText(id) {",
  "  var pjs = Processing.getInstanceById(id);",
  "  var text = document.getElementById('inputtext').value;",
  "  pjs.drawText(text);}",
  "-->",
  "</script>"

 ],

 "modify_body": [

  "<input type='text' id='inputtext'></input>",
  "<button onclick=drawSomeText('ExampleCanvas')></button>"

 ],
}

นี่ดูค่อนข้างเรียบร้อยสำหรับฉัน appart จากที่ฉันต้องใช้เครื่องหมายคำพูดทุกที่ แม้ว่าจะเป็นอย่างอื่นฉันก็สามารถใช้ YAML ได้ แต่นั่นมีข้อผิดพลาดอื่น ๆ และไม่ได้รับการสนับสนุนโดยกำเนิด เมื่อแยกวิเคราะห์ฉันใช้myData.modify_head.join('\n')หรือmyData.modify_head.join()ขึ้นอยู่กับว่าฉันต้องการแบ่งบรรทัดหลังจากแต่ละสตริงหรือไม่


40
นี่เป็นวิธีแก้ปัญหาสำหรับการตั้งค่าเฉพาะซึ่งไม่จำเป็นต้องเกี่ยวข้องกับคำถาม สิ่งที่คุณสร้างขึ้นนั้นไม่มีสตริงหลายบรรทัด (ซึ่งเป็นไปไม่ได้) แต่มีอาร์เรย์ที่มีสตริงอยู่ภายใน
Samuel Rivas

3
สิ่งนี้แสดงวิธีแทรกบรรทัดใหม่ในสตริงซึ่งไม่ตอบคำถาม คำตอบนี้ไม่
fgrieu

1
fgrieu - หนึ่งสามารถเชื่อมสตริงได้อย่างง่ายดายโดยไม่ต้องเพิ่มบรรทัดใหม่ ด้วยการเปลี่ยนแปลงเล็กน้อยนั้นจะจัดเตรียมวิธีแก้ปัญหาสำหรับสตริงหลายบรรทัด (ตราบใดที่คุณอยู่ในการควบคุม specifiying สกีมา JSON) ฉันจะพยายามปรับปรุงคำตอบด้วยสิ่งนี้
drrob

1
ขอบคุณฉันชอบสิ่งนี้ ฉันจะทำอย่างนี้กับสิ่งที่ฉันกำลังทำอยู่ มันดูเรียบร้อยและเป็นระเบียบ ฉันจะให้แต่ละบรรทัดขึ้นบรรทัดใหม่ในอาเรย์นี้แสดงถึงการแบ่งบรรทัดในข้อความเอาท์พุทถึงแม้ว่าวิธีนี้จะใช้ได้กับกรณีที่คุณไม่ได้แทรกตัวแบ่งบรรทัด ฉันเคยใช้วิธีแก้ปัญหานี้มาก่อนในซอร์สโค้ดจาวาสคริปต์ของฉันเพียงเพราะฉันชอบวิธีการจัดระเบียบมันดูและวิธีการที่ไม่ต้องสงสัยเลยว่าช่องว่างประเภทใดเข้าไปในสตริงสุดท้าย
Gal

แม้จะมีการจองของนักประดิษฐ์ JSON ฉันเพียงแค่ใช้สิ่งนี้เพื่อเพิ่มความคิดเห็น (โดยไม่ต้องมีส่วนของจาวาสคริปต์ แต่เฉพาะ [] และเครื่องหมายจุลภาค) เพื่อเพิ่มความคิดเห็นเพื่อช่วยผู้ดูแลระบบในอนาคตที่อาจแก้ไขไฟล์ JSON ตัวเล็ก ๆ
Whirl Mind

117

น่าเสียดายที่คำตอบจำนวนมากที่นี่ตอบคำถามว่าจะใส่อักขระบรรทัดใหม่อย่างไรในข้อมูลสตริง คำถามคือวิธีการทำให้โค้ดดูดีขึ้นโดยการแยกค่าสตริงในโค้ดหลายบรรทัด (และแม้กระทั่งคำตอบที่รับรู้ถึงข้อเสนอนี้ "โซลูชั่น" ที่ถือว่าหนึ่งมีอิสระที่จะเปลี่ยนการแสดงข้อมูลซึ่งในหลายกรณีหนึ่งไม่ได้)

และข่าวที่แย่กว่านั้นก็คือไม่มีคำตอบที่ดี

ในภาษาการเขียนโปรแกรมหลายภาษาแม้ว่าพวกเขาจะไม่สนับสนุนการแยกสตริงข้ามบรรทัดอย่างชัดเจนคุณยังสามารถใช้การต่อสตริงเพื่อให้ได้ผลตามที่ต้องการ และตราบใดที่คอมไพเลอร์ไม่น่ากลัวมันก็ใช้ได้

แต่ json ไม่ใช่ภาษาโปรแกรม มันเป็นเพียงการแสดงข้อมูล คุณไม่สามารถบอกให้เชื่อมโยงสตริงได้ (ไวยากรณ์ค่อนข้างเล็ก) และไม่มีเครื่องมืออำนวยความสะดวกใด ๆ สำหรับการแสดงสตริงในหลายบรรทัด

การประดิษฐ์ตัวประมวลผลล่วงหน้าบางชนิดสั้น ๆ (และสำหรับฉันไม่รู้สึกว่าภาษาของตัวเองมีประสิทธิภาพในการแก้ปัญหานี้) ไม่มีวิธีแก้ปัญหาทั่วไปสำหรับปัญหานี้ หากคุณสามารถเปลี่ยนรูปแบบข้อมูลจากนั้นคุณสามารถแทนที่อาร์เรย์ของสตริง มิฉะนั้นนี่คือหนึ่งในหลาย ๆ วิธีที่ json ไม่ได้ออกแบบมาเพื่อให้มนุษย์สามารถอ่านได้


3
ไม่ชัดเจนว่า OP ต้องการให้มีการขึ้นบรรทัดใหม่หรือจัดการสตริงอย่างไรดีกว่า ...
9ilsdx 9rvj 0lo

3
@ 9ilsdx9rvj0lo: ไม่มันไม่ใช่
Mark Adelsberger

เกี่ยวกับ "คำถามคือวิธีทำให้โค้ดดูดีขึ้นโดยการแยกค่าสตริงในโค้ดหลายบรรทัด ... ": สำหรับวิธีแก้ปัญหาคำสั่งหลายบรรทัดใน Python ดูstackoverflow.com/questions/53162/ … มีความแตกต่างระหว่าง JSON หลายบรรทัดและ Python หลายบรรทัด JSON แบบหลายบรรทัดใช้ '\' ตามด้วย 'n' ใน JSON เช่น "\ n" ในสตริง ประโยค Python หลายบรรทัดใช้ '\' ตามด้วย '\ n' เช่นแบ็กสแลชต่อท้ายบนบรรทัดที่จะดำเนินการต่อ รูปแบบ Windows: แทนที่ \ n ด้วย \ r \ n ตามความเหมาะสม!
Ivan

106

ตรวจสอบข้อมูลจำเพาะ ! การผลิตถ่านของ JSON ไวยากรณ์สามารถใช้ค่าต่อไปนี้:

  • any-Unicode-character-exception- "หรือ - หรือ\-control-character
  • \"
  • \\
  • \/
  • \b
  • \f
  • \n
  • \r
  • \t
  • \u สี่หกเหลี่ยมตัวเลข-

การขึ้นบรรทัดใหม่คือ "อักขระควบคุม" ดังนั้นคุณอาจไม่มีการขึ้นบรรทัดใหม่ตามตัวอักษรในสตริงของคุณ อย่างไรก็ตามคุณสามารถเข้ารหัสโดยใช้การรวมกันของ\nและ\rคุณต้องการ



3
นี่เป็นคำตอบที่ถูกต้องเนื่องจากไม่มีความคลุมเครือ สายใหม่จะได้รับอนุญาตต่อข้อกำหนดตราบใดที่พวกเขาจะหนีออกมาได้อย่างถูกต้องด้วยตัวอักษรควบคุม
Ryan

@AliKhaki \ n ใน JSON จะไม่บรรลุผลตามที่คำถามค้นหา ไม่ว่าคุณจะคิดถึงสิ่งอื่น (เช่นการฝังอักขระบรรทัดใหม่) หรือคุณกำลังพูดถึงการขึ้นบรรทัดใหม่ในสตริงตัวอักษร (มี JSON) ในภาษาการเขียนโปรแกรมบางอย่างซึ่งเป็นสิ่งที่แตกต่างกันอีกครั้ง
Lightness Races ในวงโคจร

@LightnessRacesinOrbit ใช่ฉันกำลังมองหาการขึ้นบรรทัดใหม่ในสตริง
Ali Khaki

46

JSON ไม่อนุญาตให้มีการขึ้นบรรทัดใหม่เพื่อให้สามารถอ่านได้

ทางออกที่ดีที่สุดของคุณคือการใช้ IDE ที่จะเข้าบรรทัดห่อหุ้มคุณ


1
เครื่องมือแก้ไขเช่น BBEdit ที่รองรับการตัดบรรทัด "อ่อน" เหมาะอย่างยิ่ง มันล้อมรอบข้อความเพื่อให้ทุกอย่างปรากฏในพื้นที่ที่มองเห็นได้ของหน้าต่างตัวแก้ไข แต่เฉพาะตอนท้ายบรรทัดที่คุณพิมพ์ (เช่นการกดปุ่มคืนค่าขนส่ง) จะคงอยู่ในไฟล์เมื่อมีการบันทึก ทำให้การแก้ไข JSON ง่ายขึ้นด้วยสตริงที่ยาวมาก ๆ โดยไม่ต้องใช้เทคนิคในการเขียนโค้ดหรือแฮ็ก
cshotton

44

นี่เป็นคำถามที่เก่ามาก แต่ฉันเจอสิ่งนี้ในการค้นหาและฉันคิดว่าฉันรู้ที่มาของปัญหาของคุณ

JSON ไม่อนุญาตการขึ้นบรรทัดใหม่ "ของจริง" ในข้อมูล สามารถมีการขึ้นบรรทัดใหม่ได้เท่านั้น ดูคำตอบจาก@YOU ตามคำถามดูเหมือนว่าคุณพยายามหลีกเลี่ยงการขึ้นบรรทัดใหม่ใน Python สองวิธี: โดยใช้อักขระต่อเนื่องของบรรทัด ( "\") หรือโดยใช้"\n"เป็นตัวหลีกเลี่ยง

แต่โปรดจำไว้ว่า: หากคุณใช้สตริงในไพ ธ อนอักขระพิเศษที่หลบหนี ( "\t", "\n") จะถูกแปลเป็นอักขระควบคุมจริง! "\n"จะถูกแทนที่ด้วยอักขระควบคุม ASCII ที่เป็นตัวแทนของอักขระ newline ที่แม่นยำตัวอักษรที่เป็นสิ่งผิดกฎหมายใน JSON (สำหรับอักขระที่ต่อเนื่องของบรรทัดมันก็จะขึ้นบรรทัดใหม่)

ดังนั้นสิ่งที่คุณต้องทำคือป้องกันไม่ให้ Python หลบหนีจากตัวละคร คุณสามารถทำได้โดยใช้สตริงดิบ (ใส่rข้างหน้าของสตริงในr"abc\ndef"หรือโดยการรวมเครื่องหมายทับพิเศษที่ด้านหน้าของบรรทัดใหม่ ( "abc\\ndef")

ทั้งสองข้อข้างต้นแทนที่จะแทนที่"\n"ด้วยอักขระควบคุม ASCII ของ newline จริงจะปล่อยให้"\n"เป็นอักขระตัวอักษรสองตัวซึ่ง JSON สามารถตีความเป็นการหลีกเลี่ยงบรรทัดใหม่


12

เขียนค่าคุณสมบัติเป็นอาร์เรย์ของสตริง เหมือนตัวอย่างที่ได้รับมากกว่าที่นี่https://gun.io/blog/multi-line-strings-in-json/ สิ่งนี้จะช่วยได้

เราสามารถใช้อาเรย์ของสตริงสำหรับสตริงหลายบรรทัดได้ดังต่อไปนี้

{
    "singleLine": "Some singleline String",
    "multiline": ["Line one", "line Two", "Line Three"]
} 

และเราสามารถทำซ้ำอาร์เรย์เพื่อแสดงเนื้อหาในแบบหลายบรรทัดได้อย่างง่ายดาย


1
ฉันอยากจะแนะนำให้คุณเพิ่มข้อมูลในคำตอบของคุณจากการเชื่อมโยงเพราะการเชื่อมโยงสามารถทำลายในอนาคต
YoungHobbit

5
แต่คุณมีอาร์เรย์ไม่ใช่สตริง อาร์เรย์ไม่ใช่สตริง ระยะเวลา
9ilsdx 9rvj 0lo

แค่คิดเรื่องนี้ ดี!
Phillip Jacobs

12

ใช้ json5 (ตัวโหลด) ดูhttps://json5.org/ - ตัวอย่าง (โดย json5)

{
  lineBreaks: "Look, Mom! \
No \\n's!",
}

คำถามที่ OP ถาม อย่างน้อยถ้าเขาสามารถใช้ json5
เมน

10

เป็นไปได้ไหมที่จะมีสตริงหลายบรรทัดใน JSON?

ใช่. ฉันเพิ่งทดสอบตอนนี้ด้วยเว็บเบราว์เซอร์ Firefox ของฉันโดยกด F12 คลิกคอนโซลและพิมพ์ที่ด้านล่างของหน้าจอ

x={text:"hello\nworld"}

เพิ่งสร้าง Object x จากสตริงรูปแบบ JSON ที่มีสตริงหลายบรรทัด

console.log(x.text)
hello
world

x.text แสดงขึ้นมาซึ่งแสดงว่าเป็นสตริงหลายบรรทัด

การทดสอบทั้งสองนี้แสดงให้เห็นว่าล่าม Javascript ของ Firefox มีความสุขในการสร้างและใช้ JSON ด้วยสตริงหลายบรรทัด

ทดสอบเพิ่มเติมด้วยJSON.stringifyและJSON.parseแสดงล่าม Javascript สามารถแปลงวัตถุที่มีสตริงหลายบรรทัดเพื่อ JSON และแยกมันกลับมาอีกครั้งโดยไม่มีปัญหาเลย

ฉันเคยเก็บผลงานที่สมบูรณ์ของเช็คสเปียร์เป็นทรัพย์สินในออบเจ็กต์ JSON แล้วส่งผ่านทางอินเทอร์เน็ตโดยไม่มีการทำลาย

ตัวอย่าง

นี่คือสตริงสองบรรทัดที่ป้อนผ่านสามบรรทัด

x={text:"expert\
s\nex\
change"}

เราสามารถแสดงวัตถุ

console.log(x)

ให้

Object { text: "experts\nexchange" }

หรือสตริง

console.log(x.text)

ให้

experts
exchange

จุดสิ้นสุดของบรรทัดในผลลัพธ์สตริงจากการใช้ \ n และหลายบรรทัดอินพุตทำได้โดยใช้เพียง \ ที่ส่วนท้ายของบรรทัด

ในทางปฏิบัติคุณอาจต้องการซิงโครไนซ์จุดสิ้นสุดบรรทัดของคุณกับสิ่งที่อยู่ในสตริงเช่น

x={text:"experts\n\
exchange"}

ความยาวสตริงหลายบรรทัด

console.log("Hello\nWorld".length)
11 
console.log("Hello World".length)
11

โปรดทราบว่าสตริงที่มีการขึ้นบรรทัดใหม่จะต้องไม่ยาวกว่าสตริงที่มีช่องว่าง แม้ว่าอักขระสองตัวถูกพิมพ์บนแป้นพิมพ์ ('\' และ 'n') จะมีการจัดเก็บอักขระเพียงตัวเดียวในสตริง


3
ตัวอ่านรูปแบบสตริง JavaScript ไม่ใช่ตัวอ่านรูปแบบสตริงของ JSON และในทางกลับกันดังนั้นในขณะที่มันใช้งานได้คอนโซล JavaScript ก็ยอมรับ x={"a":NaN}และx={"a":"a \<literal newline with SHIFT>b"}ไม่ใช้ JSON แต่เป็น JavaScript
cat

9

ใช้ regex เพื่อแทนที่\r\nด้วย\\nทั้งหมด

สิ่งนี้ใช้ได้กับฉันในงานกาลา

val newstr = str.replace("\r\n", "\\n")

ทำไมแบ็กสแลชทั้ง 3 ตัว?
neXus

6
@neXus ฉันไม่รู้ว่าทำไม แต่มีคนแก้ไข 3 แบ็กสแลช ขอบคุณ LightnessRacesInOrbit สำหรับการแก้ไข
Sikander

5

หากคุณยินดีที่จะใช้ Node.js คุณสามารถทำได้:

module.exports = {

  multilineStr: `

     dis my life 
     it's now or never

  `

}

คุณสามารถนำเข้าด้วย Node.js และแปลงเป็น JSON ได้อย่างง่ายดาย:

echo `node -pe 'JSON.stringify(require("./json-mod.js"))'`

และคุณจะได้รับ:

{"multilineStr":"\n \n dis my life\n it's now or never\n \n "}

มันทำงานอย่างไร : คุณใช้ Node.js เพื่อโหลดโมดูล JS ซึ่งสร้างวัตถุ JS ที่สามารถ JSON เป็นสตริงได้อย่างง่ายดายโดย Node.js ตัวเลือก e- ประเมินสตริงและ-pตัวเลือกสะท้อนผลตอบแทนของการดำเนินงาน Node.js ล่าสุดเพื่อ stdout

หากคุณต้องการโหลดสคริปต์. js ที่อยู่ในไดเรกทอรีการทำงานที่แตกต่างกันคุณจะต้องสลับสตริง "" และ '':

my_script='../json-mod.js'
echo `node -pe "JSON.stringify(require('$my_script'))"`

-4

ลองใช้base64ค่าสตริงที่เข้ารหัส ทำงานให้ฉันเกือบตลอดเวลา

{
    "singleLine": "Some singleline String",
    "multiline": ["Line one", "line Two", "Line Three"]
} 

หลังจากbase64สตริงที่เข้ารหัสดูเหมือนว่า

{
    "singleLine": "Some singleline String",
    "multiline": "TGluZSBvbmUKTGluZSBUd28KTGluZSBUaHJlZQ=="
} 

การเข้ารหัสและถอดรหัส base64 มีให้บริการในทุกภาษา


7
คุณต้องการรหัสพิเศษเพื่อแสดงมันคุณกำลังแปลงสตริงเป็นอาร์เรย์ มันไม่ใช่วิธีแก้ปัญหา
tom10271

3
ฉันคิดว่านี่เป็นความคิดที่ไม่ดี - มันทำให้เนื้อหายุ่งเหยิงโดยไม่จำเป็นและต้องการรหัสพิเศษเวลาหน่วยความจำและเครื่องมือในการผลิตและบริโภคมัน การสแกนผ่านสตริงและการแทนที่อักขระพิเศษแน่นอนว่าต้องใช้รหัสเวลาและหน่วยความจำเพิ่มเติมเช่นกัน แต่แน่นอนว่าน้อยกว่าการเข้ารหัสและถอดรหัส
เบส 64

นี่เป็นความคิดที่ไม่ดีเนื่องจากการอ่าน JSON หายไปและเช่นเดียวกับ @ tom10271 ที่กล่าวถึงคุณต้องมีการดำเนินการเพิ่มเติมเพื่อใช้ json
T90

-23

ใส่ข้อความหลายบรรทัดในไฟล์ txt แล้ว

var str = {
    text: cat('path_to_file/text.txt')
}

(มันทำงานบน mongoDB)


11
-1: นี่เป็นคำตอบที่ทำให้เข้าใจผิด มันเป็นค่า JSON catที่ถูกต้องหรือไม่ก็ทำงานในจาวาสคริปต์ที่มีฟังก์ชั่นไม่มีชื่อ
Martin Schuhfuß
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.