# 调用ExpressionString

`this.getPropsInfo`在内部已经提供了处理ExpressionString的功能，但是如果还有一些特殊的需求和功能，可以手动引入相关函数来实现。

## 判断字符串是否是ExpressionString

RCRE提供了isExpressionString函数来让开发者判断一个字符串是否是ExpressionString

```javascript
import {vm} from 'rcre-core';

console.log(vm.isExpressionString('#ES{$data.name}')) // true
console.log(vm.isExpressionString('aaa')) // false
```

## 处理单个ExpressionString字符串
使用vm.parseExpressionString函数来处理ExpressionString，需要提供执行上下文，作为ExpressionString中的变量引用。

```javascript
import {vm} from 'rcre-core';

let str = '#ES{$data.name}';
console.log(vm.parseExpressionString(str, {
    $data: {
        name: 'helloworld'
    }
})) // helloworld
```

## 批量处理ExpressionString

使用 compileExpressionString 函数可以批量处理一个对象中存在的ExpressionString。

```javascript
import {vm} from 'rcre-core';
let obj = {
    name: 'aaa',
    age: '#ES{$data.age}'
}
console.log(vm.compileExpressionString(obj, {
    $data: {
        age: 22
    }
})); // {name: 'aaa', age: 22}
```

