Сообщение от Malleys
|
Обход всех текстовых узлов в DOM
var Y=f=>(g=>x=>f(g(g))(x))(g=>x=>f(g(g))(x));
var processTextNodes = visit => Y(order => node => {
if(node != null) node.childNodes.forEach(childNode =>
childNode.nodeType === Node.TEXT_NODE ? visit(childNode) : order(childNode)
)
});
var logTextNotes = processTextNodes(console.log);
logTextNotes(document.body);
|
var Y=f=>(g=>x=>f(g(g))(x))(g=>x=>f(g(g))(x));
За такую конструкцию в средние века точно бы на костер поставили =)
Сообщение от Poznakomlus
|
Код должен быть простым и понятым
|
Сообщение от Aetae
|
P.S. Если кому интересно откуда взялся этот его бессмысленный Y-комбинатор - в рамках js он, как и прочие комбинаторы, просто математическая зарядка для ума, самоочевидно не предназначенная ни для какого практического применения.
|
Вот здесь немного есть
И здесь