mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-23 12:35:07 +08:00
23 lines
611 B
JavaScript
23 lines
611 B
JavaScript
|
|
'use strict'
|
||
|
|
|
||
|
|
const implementation = {
|
||
|
|
isTag: node => node !== undefined && 'name' in node,
|
||
|
|
getAttributeValue: ( elem, name ) => {
|
||
|
|
if( implementation.isTag( elem ) && elem.attribs ) return elem.attribs[ name ]
|
||
|
|
},
|
||
|
|
getChildren: node => node.children,
|
||
|
|
getName: elem => {
|
||
|
|
if( implementation.isTag( elem ) ) return elem.name
|
||
|
|
},
|
||
|
|
getParent: node => node.parent,
|
||
|
|
getText: node => node.children.map( child => {
|
||
|
|
if( child.text ) return child.text
|
||
|
|
|
||
|
|
if( implementation.isTag( child ) ) return implementation.getText( child )
|
||
|
|
|
||
|
|
return ''
|
||
|
|
}).join( '' )
|
||
|
|
}
|
||
|
|
|
||
|
|
module.exports = implementation
|