javascript eval 执行过程
2024-08-25 11:49:51
当执行eval时,会执行如下过程 eval(x):
1.如果 x的类型不是string,那么会return x;
2.把x转换成 ecmascript 代码。如果转换失败,责抛出SyntaxError异常。
3.为转换后的代码建立一个新的执行上下文环境,并存入evalCtx;
4.执行转换后的代码,并将结果存入result;
5.退出 evalCtx 执行上下文环境,并且回复上一步的执行环境。
6.如果result.type是正常的,如果他的返回值是非空值V,那么将eval将返回V;
7如果result.type 是正常的,如果他的返回值是 empty,那么将返回undefined;
8.否则,必须抛出result.type的一个异常
最新文章
- 基于Python的TestAgent实现
- MyEclipse for linux 破解方法
- 【leetcode】Maximum Gap
- kafka原理存储
- ImageSource的使用
- LinkedBlockingQueue和ConcurrentLinkedQueue详细用法
- Android开发-API指南-任务和回退栈
- System V信号量
- How to center anything with css
- Python成长之路_装饰器
- [置顶] perl脚本中defined,exists和delete关键字的用法和区别
- 配置BeanUtils包,同时也是对导入第三包的步骤说明
- SQLite数据库操作 (原始操作)
- flashbuilder mx组件 MenuBar
- Java提高十五:容器元素比较Comparable&;Comparator深入分析
- cassandra 3.x官方文档(4)---分区器
- MDX Query - mdx的基本语法和概念
- autotools源文件相同/不同目录下
- C# 用 WebClient 的 Post 方法向 WebServer 传输数据
- 阿里云 centos7 django + uWSGI+Nginx + python3 部署攻略