Javascript 将参数传递到函数中,而不将其添加到函数调用中

Javascript 将参数传递到函数中,而不将其添加到函数调用中,javascript,function,arguments,default,Javascript,Function,Arguments,Default,我尝试了您的解决方案,它似乎在堆栈溢出“代码运行环境”中运行良好。 我可能需要将它与我的原始代码进行比较 $.getJSON(“https://teamtreehouse.com/chalkers.json,函数(结果){ var buildHtml=“”; 函数buildLi(语言){ buildHtml++=“”+“语言”|“+结果点[语言]+””; } buildHtml+=“”; buildLi(“HTML”); buildLi(“CSS”); buildLi(“JavaScript”

我尝试了您的解决方案,它似乎在堆栈溢出“代码运行环境”中运行良好。 我可能需要将它与我的原始代码进行比较

$.getJSON(“https://teamtreehouse.com/chalkers.json,函数(结果){
var buildHtml=“”;
函数buildLi(语言){
buildHtml++=“
  • ”+“语言”|“+结果点[语言]+”
  • ”; } buildHtml+=“
      ”; buildLi(“HTML”); buildLi(“CSS”); buildLi(“JavaScript”); buildLi(“PHP”); buildHtml+=“
    ”; $(“.skill ul container”).append(buildHtml); });
    
    比分
    
    您不需要包括这两个参数,如果您在这个callback函数中定义了
    buildLi
    ,因为这两个变量都在函数的内部,您可以毫无问题地使用它们

    您可以在函数声明和所有调用中删除它们作为参数,因为这两个变量都在整个代码的范围内

    $.getJSON("that/nice/json/file/that/stores/my/score.json", function(result){
    
        var buildHtml = ""; 
    
        function buildLi(language){
            buildHtml += "<li>" + "<h4> language </h4> | <span>" + result.points[language] + "</span></li>";
        }
    
        buildHtml += "<ul>";
        buildLi("HTML");
        buildLi("CSS");
        buildLi("JavaScript");
        buildLi("PHP");
        buildHtml += "</ul>";
    
        $(".skill-ul-container").append(buildHtml);             
    });
    
    $.getJSON(“that/nice/json/file/that/stores/my/score.json”,函数(结果){
    var buildHtml=“”;
    函数buildLi(语言){
    buildHtml++=“
  • ”+“语言”|“+结果点[语言]+”
  • ”; } buildHtml+=“
      ”; buildLi(“HTML”); buildLi(“CSS”); buildLi(“JavaScript”); buildLi(“PHP”); buildHtml+=“
    ”; $(“.skill ul container”).append(buildHtml); });
    除了将这两个参数作为全局变量访问外,您还可以使用函数来创建函数的新版本,并修复分配给
    这个
    关键字的值,以及调用新函数时提供的任何参数之前的任何数量。

    感谢您的快速回答。我真的试过了,但我总是得到一个“结果是未定义的错误”,谢谢你的快速回答。谢谢你的回答,我也会研究一下:)