おはようございます。
> ライブラリを使わないなら頑張ってXMLHttpRequestをガリガリ書く ←とくにこれ
> 好きな形式でアウトプットする
は、どなたか心優しい方がきっと書いてくれるであろうことを期待します
<!DOCTYPE html>
<body>
<script>
if(!Array.prototype.map)Array.prototype.map=function(b,e){var c=this.length;if(typeof b!="function")throw new TypeError;for(var d=Array(c),a=0;a<c;a++)a in this&&(d[a]=b.call(e,this[a],a,this));return d};
if(!Array.prototype.reduce)Array.prototype.reduce=function(d){var c=this.length;if(typeof d!="function")throw new TypeError;if(c==0&&arguments.length==1)throw new TypeError;var a=0;if(arguments.length>=2)var b=arguments[1];else{do{if(a in this){b=this[a++];break}if(++a>=c)throw new TypeError;}while(1)}for(;a<c;a++)a in this&&(b=d.call(null,b,this[a],a,this));return b};
var CSV_text = "年,考査,太郎,花子,つとむ\n2009,期末,56,88,95\n2010,中間,97,90,40\n2010,期末,55,49,61\n2011,中間,70,80,63";
var pickup_list = [2,3,4];
var A =
(function (text) {
return text.split (/\r\n|\r|\n/g)
.reduce (
(function (a, b) {
return a.concat ([b.split (/\s*[,\t]\s*/)]);
}), []);
});
var B =
(function (ary) {
return ary.reduce (
function (a, b) {
return b.map (
function (c, i) {
return (isNaN (c))
? this[i]
: (isNaN (this[i]))
? Number (c)
: Math.min (Number (c), this[i])
}, a);
},
[]);
});
var C =
(function (a) {
return this[a];
});
var a = A (CSV_text);
var b = B (a);
var c = [
pickup_list.map (C, a[0]),
pickup_list.map (C, b)
];
alert(c.join ("\n"));
</script>
お礼
すごいです!ちゃんと表示されました!! こんな素人にお付き合い下さり、ありがとうございました。 これを機にコードの意味をもっと理解し、がんばって勉強したいと思います(^-^)/