Finding Names in Objects
-
@Casmat for in loops are probably what you need
-
var obj = { "someEntry": [1, 2, 3, 4], "someOtherStuff": "yes" }; for(key in obj) { Console.print(key); // someEntry, otherStuff Console.print(trace(obj[key])); // [1, 2, 3, 4], "yes" }
-
@d-healey @Christoph-Hart haha! I had tried a for loop but it had returned an undefined error, mustve been a type error on my part since it works now! Thanks again!
-
@d-healey @Christoph-Hart Oops, another thing popped up. I've put each of those objects into an array, but I can't sort them since they're objects. How do i take that object name ("All", "Pad", "Chord", "Pluck") and make it a string so it is sortable and presentable in a viewport? I thought of putting a value in the object something like this
"name": "All"
but is there an easier way to convert it? -
Anyone know?
Thanks!
-
@Casmat Nested loops are what you use to access the inner elements
-
@d-healey Could you please give an example? I’m sorry, didn’t fully understand how I should use nested loops to get the names of the objects
Edit: or are you saying that I should use
”name”: “All”
alongside nested loops?Thanks!
-
Have you seen this video?
https://www.youtube.com/watch?v=orqzckIOy0E
If you give me a simple snippet that has the object/arrays setup and tell me what you want the output to be I can give a more specific answer.
-
@d-healey Yup, watched the video! Basically, the object
layerScreenObject
(first post) is what the question is based around. In the object you can see that there’s multiple objects (All, Pad, Chord, Pluck). In each of those objects, there’s more objects which have the different “Morphs” (SampleMaps). All I want to do is get the first-level objects (All, Pad, Chord, Pluck) and turn them into strings. I don’t want to trace them and get the contents, just the objectAll -> “All”
. So basically, the output should result in a new array with the following values:[“All”, “Pad”, “Chord”, “Pluck”]
. Really, I’m trying to makelayerScreenObject
act as a makeshift file system with each of the objects being “directories”. The data, such as”instrument”: “Example”
are the “files”. This is all so I can make a browser which searches the samplemaps and divides them up into different categories such as pad, chord, pluck with “All” being all the samplemaps. Can’t currently send a snippet since my computers going through a long update, but hope this info clarifies!Thanks!
-
@d-healey Ok, just retried it all from scratch and now it works. I guess my eyes were playing tricks on me the whole time haha. I had thought for some reason that when you push each of the objects inside an object into an array, the objects would be inside the array, but apparently, when the push function is used, the object's name is converted to a sting. Sorry for the major confusion!
HiseSnippet 1001.3ocsV01aaaCDlzwZnVaYXsn66B5S1.YF18sMzfg4FGmAi033MmELfstNFoyVrlhTfhJoFCAX+c1+t8OX6njeQtwoHwqUeR2KO7d3Qd2wgZU.jlpzDZsSmk.D5m4LZlzD0Mhwkj9GRn65bFnS6FAASAM4fYIrzTHjPo678VWn0pRx+9mu6.lfICfUpHjyT7.3k7XtYk1gc9AtPbDKDNkGWx6mzoefR1UITYHc1woEIgELkMAFvrtUwgP+jdgbiROxvLPJgV8.U3rQQpKkE9eFOket.rBsIivEpP8QJQnkwVsjtQbQ3vEa6TBtJCWkD1oHI7Pmi4g7k5WkL9hbCdqPTNePqrN81YM50tL8ZUhdafRzRTpZAktuyn.MOwrxhkOepSeoAziYXZuLUJ7kT4uq5zUgdHMMiYSgiznvRD0eVqV648zVsZr+tttZXhmfMCzHV.jmb9af.i22549mt07egP3+bO2Z3+07Ofqj7.uiU5jH+miZrZq4ykoFcVLFKzU+A7IQFuStT3iFuZOKtALC+BXANuaOvghL7xW3cOhmBolBTdsuQb8dKKNQ.aD0i1JTO9VgxMGn+PVn08+WY1679bdr6Fozqh9Ve9bmSXK151y0kg+Cwo7sNy6d09ttX6FD4ELs2EIly3vkIJs8J+hRlIfoqJNQIQg59k7wuw940KnpWZKYNkMouAhSQr+5qvEdrRWeJLyiKudIUCaA06BrYRVZjEBtvVlcM6XAuAOexzLQ8FENrfLMSAjcbqa96cMJ07MJtrt+uI8aXwMNSFXvaYdJ4.kANQVOmOtW458tlFOdi1rIGsRH.8FMa6oqee.qKyhOGzHSYhLXoiXit06d5bycOK2bOn3rpjiJYeI2bRBHuoV9j4Gv1NsyYE5pIuO6Cl2mEBWjeI7P6TvRYbRN0KMmqC4m6eHyvVrf3ZiwKAzFtcqPODt.mCVzHulygP5TiJI2242tHz6cGB+aWF5N+QmYKE9qerSVJNsMEWNZk7KDD5W5f8tcyKzcwVMt4UYjK4glHLGS+bJgDA1ZJqzuSsymu1rGbpmJLSvLqOJzN+etA7Dds4O1YLxTtYV42G7Aa93skh22YH2DDsYNVYCbDO+9Xvw4upXWmdiGic.VQvpNG8KebdBA4mTYFtbxwLili2WbFjEOBeXU.fQWJAgsBiVwVKTH2xJay.i.YXtv+heyM11JSmar8BijXVfV85fhJH66VtWtFjSx7mrUy4XqrW6EELNNsZ1hDiOg50AA1s+WgkmaFyi1BLOdKv7js.yS2BLOaKv70aAlu48hw950WjYTwEkCnhg8xabQo8jL7lU9sPx+ALoELMI
Thanks for your help!