为什么在编程中有这么多方法可以做同样的事情?这是一个 AJAX 示例:

Why are there so many ways to do the same thing in programming? Here's an AJAX example:

这里是我被教导写 AJAX 请求的方式(向后兼容):

var request;

if (window.XMLHttpRequest) {
    request = new XMLHttpRequest();
} else {
    request = new ActiveXObject("Microsoft.XMLHTTP");
}

request.open('GET', 'data.txt', true);

request.onreadystatechange = function() {

    if (request.readyState===4 && request.status===200) {   // If the request was successful
        console.log(request);                               // and has finished
        document.writeln(request.responseText);
    }
}

request.send();

这是我看到其他人在做的事情:

<script type="text/javascript">
        $(document).ready(function(){
            $("button").click(function(){

                $.ajax({
                    type: 'POST',
                    url: 'gamble.php',
                    success: function() {
                        do stuff
                    }
                });
            });
        });

    </script>

为什么同一个东西有这么多编码方式?因此,我很难学习编程,每当我提出问题时,他们编写的代码与我被告知的编写方式完全不同。

一个是使用 jQuery 库,另一个是原始的 JavaScript。

jQuery 是 JavaScript 使其更容易(在理论上和实践中)。

但只是选择了你的毒药并接受了它。大多数编程情况都没有完美的解决方案。

在编程中有很多方法可以做事,因为人们有不同的偏好,有些事情针对一种情况比另一种情况更优化。

在您给出的示例中,您的第一个块完全用普通语言编写JavaScript;第二个需要 jQuery library。在大多数情况下,前者可能会提供更好的性能,因为除了您已经进行的网络调用之外,它不需要您通过 Internet 加载库。但是,如果您已经在项目的其余部分中使用了 jQuery,那么使用 jQuery 可能会更容易。

换句话说,加载整个库来进行一次网络调用是没有用的。

因为编程中有很多不同的情况、条件和限制,所以一个问题有很多解决方案,我认为这是一件值得庆幸而不是恐惧的事情。