是什么决定可用的ECMAScript版本?

时间:2018-12-11 08:21:14

标签: javascript vba with-statement

我已被分配去调试旧的Visual Basics网站,在该网站中,我们只能访问JavaScript。

问题在于到处都使用了“ With”语句,有些甚至在其中包括“ remove()”。

这让我感到奇怪,是浏览器确定了ECMAScript的可用版本,还是其他?因为如果是浏览器,那么我想我可以使用“让”来解决大多数范围界定问题,我猜想“与”已被用来解决。

编辑: 在代码中使用with语句的示例(可在注释中找到其上下文):

function firstFunction(input1) {

    var someVariable = document.getElementById('someId');

    var i = someVariable.options.length;

    with (someVariable) {
        options[i] = new Option();
        options[i].text = input1.Name;
        options[i].value = input1.Id + ';' + input1.Type;
        i++;
    }
}

function secondFunction(input2) {

    var someVariable = document.getElementById('someId');

    var i = someVariable.options.length;

    with (someVariable) {
        options[i] = new Option();
        options[i].text = input2.PrettyName;
        options[i].value = input2.Name;
        i++;
    }
}

1 个答案:

答案 0 :(得分:3)

它是浏览器使用的JavaScript引擎:Chrome,Chromium和Opera中的V8; Firefox中的SpiderMonkey; IE8中的JScript; IE9 +中的Chakra和Edge(IE9 +中Chakra的版本非常过时; Edge的版本是最新的)。