var obj = XML2JSON.parse(' <root> <withattr id="10" name="5"> text </withattr> <nodes>1</nodes> <nodes x="y">2</nodes> <nodes><num n="3">3</num></nodes> <nodes> <num n="3"> <i>hello</i> </num> </nodes> <nodes> <num>3</num> hi </nodes> </root> '); console.log(JSON.stringify); /* {"root": { "withattr": {"@attributes": {"id": "10", "name": "5"}, "@text": "text"}, "nodes": [ "1", {"@attributes": {"x": "y"}, "@text": "2"}, {"num": {"@attributes": {"n": "3"}, "@text": "3"}}, {"num": {"@attributes": {"n": "3"}, {"i": "hello"}}} {"num": {"@attributes": {"n": "3"}, {"i": "hello"}}, "@text": "hi"} ] } } */