blog

新浪株価インターフェイス(データフォーマット付き

/** * インターフェイス: =,28 * コード * 名前 * 本日の始値 * 終値 * 現在値 * 本日の高値 * 本日の安値 */ タイプL = { id: strin...

Mar 23, 2020 · 1 min. read
Share this
/** * インターフェース:http://./list=sz002307,sh600928 * * * 本日の始値 * * * 今日の最高値 * 今日の安値 */ type L = { id: string, name: string, tday_open: number, yday_close: number, now: number, tday_ceil: number, tday_floor: number, } export type List = L[] // var hq_str_sz002307="北新路橋,6.690,6.700,6.600,6.770,6.520,6.590,6.600,25760091,170297909.000,150600,6.590,180500,6.580,64300,6.570,12800,6.560,100300,6.550,153680,6.600,107800,6.610,65300,6.620,55200,6.630,22500,6.640,2020-07-31,15:00:03,00"; // var hq_str_sh600928="西安銀行,5.610,5.640,5.630,5.720,5.600,5.620,5.630,13095438,74033723.000,290324,5.620,346100,5.610,453600,5.600,157300,5.590,154100,5.580,45630,5.630,117200,5.640,66601,5.650,69900,5.660,63802,5.670,2020-07-31,15:00:00,00,"; export function stock(data) { let list: List = [] let desc = ['name', 'tday_open', 'yday_close', 'now', 'tday_ceil', 'tday_floor'] let data_arr = data.split(';') data_arr.map(d => { if (d.trim()) { let l = d.split('=') let _l = { id: l[0].trim().replace('var hq_str_', ''), name: '', tday_open: NaN, yday_close: NaN, now: NaN, tday_ceil: NaN, tday_floor: NaN, } let d_info = l[1].trim().replace(`"`, '').split(',') desc.map((v, key) => { if (v == 'name') { _l[v] = d_info[key] } else { _l[v] = Number(d_info[key]) } }) list.push(_l) } }) return list }
Read next

js最適化ループ、DUFFデバイスで展開反復を実現する。

日々の開発では、データ構造で構成された配列やオブジェクトがいたるところで見られますが、ビジネス機能が複雑化するにつれて、単純なオブジェクト配列では対応できなくなります。 上記のアルゴリズムで長さ10の配列をトラバースする場合、必要なのは2回だけです。ceilは、反復回数が常に正となるように小数点以下を切り上げますが、これは完全に...

Mar 23, 2020 · 5 min read