L
Size: a a a
L
T
DE
DE
M
ДФ
DE
DE
DE
ДФ
DE
В
let isNullable = (value) => value === null || value === undefined;
let maybe = (value) => isNullable(value) ? maybe.none() : maybe.some(value);
maybe.none = () => ({
map: () => none(),
value: (value) => value
});
maybe.some = (value) => ({
map: (fn) => maybe(fn(value)),
value: () => value
});
let extractProperty = (propertyName) => (
(defaultValue) => (
(entity) => (
maybe(entity)
.map((entity) => entity[propertyName])
.value(defaultValue)
)
)
);
let html = extractProperty('innerHTML')('');
let add = (a, b) => a + b;
let isNaNNot = (value) => !isNaN(value);
let totalFromElements = (...elements) => (
elements
.map(html)
.map(parseFloat)
.filter(isNaNNot)
.reduce(add, 0)
);
console.log(
totalFromElements(
...document.querySelectorAll('.number')
)
);
S
let isNullable = (value) => value === null || value === undefined;
let maybe = (value) => isNullable(value) ? maybe.none() : maybe.some(value);
maybe.none = () => ({
map: () => none(),
value: (value) => value
});
maybe.some = (value) => ({
map: (fn) => maybe(fn(value)),
value: () => value
});
let extractProperty = (propertyName) => (
(defaultValue) => (
(entity) => (
maybe(entity)
.map((entity) => entity[propertyName])
.value(defaultValue)
)
)
);
let html = extractProperty('innerHTML')('');
let add = (a, b) => a + b;
let isNaNNot = (value) => !isNaN(value);
let totalFromElements = (...elements) => (
elements
.map(html)
.map(parseFloat)
.filter(isNaNNot)
.reduce(add, 0)
);
console.log(
totalFromElements(
...document.querySelectorAll('.number')
)
);
В
DE
p
let isNullable = (value) => value === null || value === undefined;
let maybe = (value) => isNullable(value) ? maybe.none() : maybe.some(value);
maybe.none = () => ({
map: () => none(),
value: (value) => value
});
maybe.some = (value) => ({
map: (fn) => maybe(fn(value)),
value: () => value
});
let extractProperty = (propertyName) => (
(defaultValue) => (
(entity) => (
maybe(entity)
.map((entity) => entity[propertyName])
.value(defaultValue)
)
)
);
let html = extractProperty('innerHTML')('');
let add = (a, b) => a + b;
let isNaNNot = (value) => !isNaN(value);
let totalFromElements = (...elements) => (
elements
.map(html)
.map(parseFloat)
.filter(isNaNNot)
.reduce(add, 0)
);
console.log(
totalFromElements(
...document.querySelectorAll('.number')
)
);
OD