TypeScript tsutils isPrefixUnaryExpression示例

说明

typescript tsutils isprefixunaryexpression示例是从最受好评的开源项目中提取的实现代码,你可以参考下面示例的使用方式。

编程语言: TypeScript

命名空间/包名称: tsutils

示例#1
文件: utils.ts 项目: erikkemperman/tslint

export function isNumeric(node: ts.Expression) {
    while (isPrefixUnaryExpression(node) &&
           (node.operator === ts.SyntaxKind.PlusToken || node.operator === ts.SyntaxKind.MinusToken)) {
        node = node.operand;
    }

    return node.kind === ts.SyntaxKind.NumericLiteral ||
        isIdentifier(node) && (node.text === "NaN" || node.text === "Infinity");
}

示例#2
文件: utils.ts 项目: erikkemperman/tslint

export function isNegativeNumberLiteral(node: ts.Node): node is ts.PrefixUnaryExpression & { operand: ts.NumericLiteral } {
    return isPrefixUnaryExpression(node) &&
        node.operator === ts.SyntaxKind.MinusToken &&
        node.operand.kind === ts.SyntaxKind.NumericLiteral;
}

展开阅读全文