memo:e4xってのがあるらしい。

ubiquityでみた意味わかんないものはe4xっていうらしいです。

<>パーサー頑張れ!.toString();

でクーオートがキャンセルできるので案外に便利なTipsとおもった。

<html>
<title>e4x</title>
<body>
<div id='outout'></div>
<pre>
xmlりてらる。。。なのか?
https://developer.mozilla.org/En/E4X_for_templating
とか
https://developer.mozilla.org/presentations/xtech2005/e4x/
とか
</pre>
<script>
	var ele = document.getElementById("outout");
  var order = <>
<order id="1234">
 <customer>
   <name>Joe Green</name>
   <address>
     <street>410 Main</street>
     <city>York</city>
     <state>VT</state>
   </address>
 </customer>
 <item>. . .</item>
 <item>
   <make>Acme</make>
   <model>Framistat</model>
   <price>2.50</price>
   <qty>30</qty>
 </item>
</order>
	</>;
  ele.innerHTML += "address:" + order.customer.address + "<br/>";
  ele.innerHTML += "second:" +  order.item[1] + "<br/>";
  ele.innerHTML += "second.total:" +  order.item[1].qty * order.item[1].price + "<br/>";
//クオートめんどくさいと気にイイのかもしれない。
hoge = <>ああああ</>.toString();
var str = <>日本語とかバリバリ書くよ!{hoge}</>.toString();
console.debug(str);
//繰り返し文とかでぶんぶん回せそう。
var items =<>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
	</>;
for(var i in items){
	console.debug("{i}--{items[i]}");
};

var dinamic_ = (function(){
		t_ar = [];
		for(var i=0;i < 100;++i){
		  t_ar.push(<ele{i}>value:{i * 100}</ele{i}>);
		};
    return <>{t_ar.join("")}</>;
})();
console.debug(dinamic_);


//<></>にfunction突っ込むと{}がるのでその場で実行される。
//コメントにすると実行されない。
//としますとエラーになりますし。""=>evalっていうのはなぁ。。
//見た目も相まって黒魔術っぽい。素敵。
var funcxml = new XML('<func><item><![CDATA[function(){console.debug("func1");}]]></item><item><![CDATA[function(){console.debug("func2");}]]></item><item><![CDATA[function(){console.debug("func3");}]]></item></func>');
console.debug('(' + funcxml[0].item[1] + ')()');
eval('(' + funcxml[0].item[1] + ')()');//ドン引きの展開

console.debug("gameover");

</script>
</body>
</html>