tohokuaikiのチラシの裏

技術的ネタとか。

JavaScriptでXMLとXPath

メモ書き

文字列からXMLオブジェクトを作成

参考:http://www.openspc2.org/reibun/javascript2/XML/convert/0001/

var xml = '<?xml version="1.0" encoding="UTF-8"?><root><twitter><account><name>読売新聞</name><id>Yomiuri_Online</id></account><account><name>NHK広報局</name><id>NHK_PR</id></account></twitter></root>';
var xmlParser = new DOMParser();
var xmlDoc = xmlParser.parseFromString(xml, "text/xml");

XPath

xmlDocを作ったらXPathを使う。

var r = xmlDoc.evaluate("//name", xmlDoc, null, XPathResult.ANY_TYPE, null);
var s = [];
while ((ret = r.iterateNext()) !== null){
    s.push(ret.textContent);
}
console.log(s); // ["読売新聞", "NHK広報局"]