function getVariablesNode(node) {
    if (node.body) {
        let v = [];
        if (Array.isArray(node.body)) {
            for (let idx = 0; idx < node.body.length; ++idx) {
                let e = node.body[idx];
                let n = getVariablesNode(e);
                if (Array.isArray(n)) {
                    v = [...v, ...n];
                }
                v.push(n);
            }
        } else {
            node.body.body.forEach(e => v.push(getVariablesNode(e)));
        }
        return v.filter(e => e);
    } else if (node.type === 'VariableDeclaration') {
        if (node.declarations[0].init.type != 'CallExpression') {
            return node;
        }
    } else if (node.type === 'ExpressionStatement') {
        return getVariablesNode(node.expression);
    } else if (node.type === 'AssignmentExpression') {
        return getVariablesNode(node.right);
    }
}
Return all nodes that are 'VariableDeclaration'.
@param {*} node
@returns