" Uncaught SyntaxError:意外的令牌)"在JavaScript的控制台中。我错过了什么?

时间:2017-07-19 04:10:21

标签: javascript jquery syntax-error unexpected-token

这是代码:



$(document).ready(function(){ 
function(dataObj){
  $.each(dataObj,function(n){
    if(dataObj.stream=="null"){
      var channelName=dataObj.display_name;
    }else{
      var channelName=dataObj.stream.display_name;
    }
  });//each bracket
}
})




错误在于函数(dataObj)。我错过了什么?

4 个答案:

答案 0 :(得分:0)

您的功能没有名称。这就是错误的原因。

答案 1 :(得分:0)

您不能拥有匿名功能。您需要提供函数名称或为变量赋值。

方法1:将函数分配给变量

$(document).ready(function(){ 
    var abc = function(dataObj){
       $.each(dataObj, function(n){
          if(dataObj.stream=="null"){
            var channelName=dataObj.display_name;
          }else{
            var channelName=dataObj.stream.display_name;
          }
       });//each bracket
    }

    abc();
});  

您可以使用示例https://jsfiddle.net/andnLfbx/

$(document).ready(function(){ 
	var abc = function(dataObj){
    console.log("abc");
  	$.each(dataObj, function(n){
    	if(dataObj.stream=="null"){
      	var channelName=dataObj.display_name;
    	}else{
      	var channelName=dataObj.stream.display_name;
    	}
  	});//each bracket
	}
  
  abc();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

方法2:提供功能名称

$(document).ready(function(){ 
    function abc(dataObj){
        $.each(dataObj, function(n){
           if(dataObj.stream=="null"){
                var channelName=dataObj.display_name;
            }else{
                var channelName=dataObj.stream.display_name;
            }
        });//each bracket
    }
});

这里有一个例子

$(document).ready(function(){ 
	function abc(dataObj){
    console.log("abc");
  	$.each(dataObj, function(n){
    	if(dataObj.stream=="null"){
      	var channelName=dataObj.display_name;
    	}else{
      	var channelName=dataObj.stream.display_name;
    	}
  	});//each bracket
	}
  
  abc();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

来源:

基础知识:

https://www.w3schools.com/js/js_function_definition.asp https://www.w3schools.com/js/js_functions.asp

深度知识

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions

答案 2 :(得分:0)

在您的代码函数名称中缺少它应该类似。

function <function_name>(dataObj) //like     function getData(dataObj)

这一点不是强制性的,但我们需要尝试manged jQuery规则。

在功能结束时添加分号});在 $(document).ready(function(){ function。**

所以它看起来像。

$(document).ready(function(){ 
   ..............
   ..............
});

答案 3 :(得分:0)

这可能是您的服务器响应问题。
您可以在以下位置查看它的响应:  浏览器开发者工具&gt;的网络