คำถามติดแท็ก javascript-objects

ใช้แท็กนี้สำหรับคำถามที่เกี่ยวข้องกับวัตถุ JavaScript

14
รับดัชนีแรกของวัตถุ
พิจารณา: var object = { foo: {}, bar: {}, baz: {} } ฉันจะทำสิ่งนี้อย่างไร: var first = object[0]; console.log(first); เห็นได้ชัดว่าไม่ได้เพราะดัชนีแรกเป็นชื่อไม่ได้foo0 console.log(object['foo']); ใช้งานได้ แต่ฉันไม่รู้ว่าชื่อฟู มันสามารถตั้งชื่ออะไรก็ได้ ฉันแค่ต้องการแรก

7
การใช้ curl POST กับตัวแปรที่กำหนดในฟังก์ชั่นสคริปต์ทุบตี
เมื่อฉันก้องฉันได้รับสิ่งนี้ซึ่งจะทำงานเมื่อฉันใส่มันลงในสถานี curl -i \ -H "Accept: application/json" \ -H "Content-Type:application/json" \ -X POST --data '{"account":{"email":"akdgdtk@test.com","screenName":"akdgdtk","type":"NIKE","passwordSettings":{"password":"Starwars1","passwordConfirm":"Starwars1"}},"firstName":"Test","lastName":"User","middleName":"ObiWan","locale":"en_US","registrationSiteId":"520","receiveEmail":"false","dateOfBirth":"1984-12-25","mobileNumber":"9175555555","gender":"male","fuelActivationDate":"2010-10-22","postalCode":"10022","country":"US","city":"Beverton","state":"OR","bio":"This is a test user","jpFirstNameKana":"unsure","jpLastNameKana":"ofthis","height":"80","weight":"175","distanceUnit":"MILES","weightUnit":"POUNDS","heightUnit":"FT/INCHES"}' https://xxx:xxxxx@xxxx-www.xxxxx.com/xxxxx/xxxx/xxxx แต่เมื่อทำงานในไฟล์ bash script ฉันได้รับข้อผิดพลาดนี้ curl: (6) Could not resolve host: application; nodename nor servname provided, or not known curl: (6) Could not resolve host: is; nodename nor servname provided, or …

16
การแปลงวัตถุ JavaScript ด้วยปุ่มตัวเลขให้เป็นอาร์เรย์
ฉันมีวัตถุแบบนี้กลับมาเป็นการตอบสนอง JSON จากเซิร์ฟเวอร์: {"0":"1","1":"2","2":"3","3":"4"} ฉันต้องการแปลงเป็นอาร์เรย์ JavaScript เช่นนี้ ["1","2","3","4"] มีวิธีที่ดีที่สุดในการทำเช่นนี้? ทุกที่ที่ฉันอ่านผู้คนกำลังใช้ตรรกะที่ซับซ้อนโดยใช้ลูป ดังนั้นมีวิธีการอื่นในการทำเช่นนี้?

8
นี่เป็นวิธีที่ดีในการโคลนวัตถุใน ES6 หรือไม่?
Googling สำหรับ "javascript clone object" นำผลลัพธ์ที่แปลกจริง ๆ มาใช้บางอันล้าสมัยอย่างสิ้นหวังและบางอันก็ซับซ้อนเกินไปไม่ง่ายเหมือน: let clone = {...original}; มีอะไรผิดปกติกับเรื่องนี้หรือไม่?

15
ลบคุณสมบัติสำหรับวัตถุทั้งหมดในอาร์เรย์
ฉันต้องการลบbadคุณสมบัติออกจากทุกออบเจ็กต์ในอาร์เรย์ มีวิธีที่ดีกว่าการใช้การforวนซ้ำและลบออกจากทุกวัตถุหรือไม่? var array = [{"bad": "something", "good":"something"},{"bad":"something", "good":"something"},...]; for (var i = 0, len = array.length; i < len; i++) { delete array[i].bad; } ดูเหมือนว่าน่าจะมีวิธีใช้prototypeหรือบางอย่าง ฉันไม่รู้ ไอเดีย?

7
เหตุใดฉันจึงสามารถเพิ่มคุณสมบัติที่มีชื่อให้กับอาร์เรย์ราวกับว่ามันเป็นวัตถุ
ข้อมูลโค้ดสองรายการต่อไปนี้ดูเหมือนจะเทียบเท่ากับฉัน: var myArray = Array(); myArray['A'] = "Athens"; myArray['B'] = "Berlin"; และ var myObject = {'A': 'Athens', 'B':'Berlin'}; เพราะทั้งคู่มีพฤติกรรมเหมือนกันและtypeof(myArray) == typeof(myObjects)(ทั้งคู่ให้ผล 'วัตถุ') มีความแตกต่างระหว่างตัวแปรเหล่านี้หรือไม่?

6
จำนวนองค์ประกอบในวัตถุจาวาสคริปต์
มีวิธีรับ (จากที่ใดที่หนึ่ง) จำนวนองค์ประกอบในวัตถุ javascript หรือไม่? (เช่นความซับซ้อนของเวลาคงที่) ฉันไม่พบคุณสมบัติหรือวิธีการที่ดึงข้อมูลนั้นมา จนถึงตอนนี้ฉันคิดได้แค่ว่าจะทำการวนซ้ำในคอลเลคชันทั้งหมด แต่นั่นคือเวลาเชิงเส้น เป็นเรื่องแปลกที่ไม่มีการเข้าถึงขนาดของวัตถุโดยตรงอย่างที่คุณคิด แก้ไข: ฉันกำลังพูดถึงObjectวัตถุ (ไม่ใช่วัตถุทั่วไป): var obj = new Object ;

2
การเข้ารหัสวัตถุ Javascript เป็นสตริง Json
ฉันต้องการเข้ารหัสออบเจ็กต์ Javascript เป็นสตริง JSON และฉันประสบปัญหามาก วัตถุมีลักษณะประมาณนี้ new_tweets[k]['tweet_id'] = 98745521; new_tweets[k]['user_id'] = 54875; new_tweets[k]['data']['in_reply_to_screen_name'] = "other_user"; new_tweets[k]['data']['text'] = "tweet text"; ฉันต้องการรับสิ่งนี้ลงในสตริง JSON เพื่อใส่ลงในคำขอ ajax {'k':{'tweet_id':98745521,'user_id':54875, 'data':{...}}} คุณจะได้รับภาพ ไม่ว่าฉันจะทำยังไงมันก็ไม่ได้ผล ตัวเข้ารหัส JSON ทั้งหมดเช่น json2 และผลงานดังกล่าว [] ดีที่ไม่ได้ช่วยฉัน โดยทั่วไปฉันต้องการบางอย่างเช่นencodejsonฟังก์ชัน php

14
วิธีการรวมค่าของวัตถุ JavaScript?
ฉันต้องการรวมค่าของวัตถุ ฉันคุ้นเคยกับ python ที่มันจะเป็น: sample = { 'a': 1 , 'b': 2 , 'c':3 }; summed = sum(sample.itervalues()) รหัสต่อไปนี้ใช้งานได้ แต่เป็นรหัสจำนวนมาก: function obj_values(object) { var results = []; for (var property in object) results.push(object[property]); return results; } function list_sum( list ){ return list.reduce(function(previousValue, currentValue, index, array){ return previousValue + currentValue; }); …

6
วิธีกำหนดออบเจ็กต์ JS นี้มีจุดประสงค์อะไรหรือไม่?
ฉันกำลังรักษารหัสเดิมอยู่และสังเกตเห็นว่ามีการใช้รูปแบบต่อไปนี้ในการกำหนดวัตถุ: var MyObject = {}; (function (root) { root.myFunction = function (foo) { //do something }; })(MyObject); มีจุดประสงค์ใดในการนี้หรือไม่? เทียบเท่ากับการทำสิ่งต่อไปนี้หรือไม่? var MyObject = { myFunction : function (foo) { //do something }; }; ฉันไม่ได้กำลังจะเริ่มต้นในภารกิจศักดิ์สิทธิ์เพื่อปรับโครงสร้างโค้ดเบสทั้งหมดตามความชอบของฉัน แต่ฉันอยากเข้าใจเหตุผลเบื้องหลังวิธีการกำหนดวัตถุในวงเวียน ขอบคุณ!
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.