Hi,Can I access the object keys given an emscripten::val.
How do I get type information about a val? or an array length etc
Hi Chad,Thanks for your answer.Say I want to convert a JS value to my C++ variant type, so if string, cast string if number cast float, if array iterate etc(I'm trying to store a JS object as c++ map)
CheersLee
On Thursday, May 15, 2014 7:04:33 AM UTC+1, Chad Austin wrote:On Tue, May 13, 2014 at 3:37 AM, Lee Morgan <lee.morg...@gmail.com> wrote:
Hi,Can I access the object keys given an emscripten::val.Hi Lee,That's a good question. Here's one way:#include <stdio.h>
#include <emscripten/val.h>
using emscripten::val;
int main() {
val window = val::global("window");
val keys = val::global("Object").call<val>("keys", window);
int length = keys["length"].as<int>();
for (int i = 0; i < length; ++i) {
printf("%s\n", keys[i].as<std::string>().c_str());
}
}
The example program looks up the global 'window' object and then prints out all of the keys.
How do I get type information about a val? or an array length etcThe above example illustrates getting array length, but I don't think there's a typeof operator exposed yet.
In particular, what kind of type information do you need?Thanks,
Chad
--
You received this message because you are subscribed to the Google Groups "emscripten-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to emscripten-disc...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
To unsubscribe from this group and stop receiving emails from it, send an email to emscripten-discuss+unsub...@googlegroups.com.
--