Skip to content

似乎有点逻辑矛盾 2.6函数6.1eval基本用法中严格模式功能方面 #292

@Am-242

Description

@Am-242
Image

eval命令修改了外部变量a的值。由于这个原因,eval有安全风险。->这里安全风险指修改外部变量 而不是声明变量

为了防止这种风险,JavaScript 规定,如果使用严格模式,eval内部声明的变量,不会影响到外部作用域。->这里使用严格模式 并不能防止上文的修改外部变量的风险 与为了防止这种风险矛盾?

也许应该换一个例子? 例如

var a = 1;

eval("var a = 2;")

console.log(a); // 2

说明:
eval命令中声明的变量覆盖了外部变量a的值。由于这个原因,eval有安全风险

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions