大家好!
今天要接續 JS 30 的內容。
我們進入今天的主題吧!
function parse() {
var error = new TypeError(''),
warning = new Warning('A non-numeric value contained'),
data, values, illegals, variance;
try {
(function () {
data = JSON.parse(this.value);
if (typeof data === 'number') return (variance = data);
if (typeof data !== 'object') throw error;
values = Object.keys(data).map(function (key) {
return data[key];
});
illegals = values.filter(function (v) {
return typeof v !== 'number';
});
if (illegals.length > 0) throw warning;
variance = VarS(values);
}).call(this);
(function () {
fns.update('normal', '');
this.classList.remove('invalid');
els[2].value = variance;
}).call(this);
} catch (e) {
(function (continuable) {
fns.update(continuable ? 'marked' : 'urgent', e.message);
if (continuable) return;
this.classList.add('invalid');
els[2].value = 0;
}).call(this, e.name.slice(-7) === 'Warning');
}
}
範例連結製作中。
差不多也到尾聲了。
如果對文章有任何疑問,歡迎於下方提問和建議!
我是 Felix,我們明天再見!