javascript – 对象不支持属性或方法’值’

发布时间:2020-02-13 发布网站:脚本之家
脚本之家收集整理的这篇文章主要介绍了javascript – 对象不支持属性或方法’值’脚本之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > Uncaught TypeError: Object.values is not a function JavaScript6个
我正在尝试编写一些代码来获取json文件并读取.但是这个代码在chrome中工作,在IE11中不起作用,我需要使用IE,实际上解决这个问题的真正解决方案是什么.我改变了一些值名称但似乎仍然存在同样的问题.

Error Message

<html xmlns="http://www.w3.org/1999/xhtml">
    <head> 
    <script src="https://code.jquery.com/jquery-1.10.2.js"></script>
    </head>
    <body>   
    	<table id="userdata" border="0.02">
    		
    			<th>Revision  Date</th>
    			<th>Document  Name</th>
    			<th>Department </th>
    			<th>Description</th>
    			<th>Link</th>
    	</table>
    <script>
              myObjects = [];
            $.getJSON('https://api.myjson.com/bins/1djve3',function(deneme) {
            myObjects = Object.values(deneme);
            console.log("Objects in array " + myObjects.length);
            
             $.each(myObjects,function(i,person) {
                  $('#userdata  th:nth-child(2)').html(person.revisiondate)
                  console.log("Person-" + person.revisiondate);
                  console.log("Person-" + person.documentname);
                  console.log("Person-" + person.department);
                  console.log("Person-" + person.description);
                  console.log("Person-" + person.link.split('href=')[1]+"' "+person.link.split('href=')[1]);    
                  
                  var $row = 
    							"<tr><td>" + person.revisiondate + 
                                "</td><td>" + person.documentname + 
                                "</td><td>" + person.department +
                                "</td><td>" + person.description + 
                                "</td><td><a target='_blank' href='"+ person.link.split('href=')[1]+"' >"+person.link.split('href=')[1]+"</a></td></tr>"  
    
    $('table> tbody:last').append($row);
                }); 
              }); 
    		  
           
    </script>
    </body>
    </html>

解决方法

而不是这条线,
myObjects = Object.values(deneme);

写,

myObjects = Object.keys(deneme).map(itm => deneme[itm]);

因为,Object.values是一个实验性功能,IE不支持它.

如果您的浏览器也不支持箭头功能,那么写,

myObjects = Object.keys(deneme).map(function(itm) { return deneme[itm]; });

总结

以上是脚本之家为你收集整理的javascript – 对象不支持属性或方法’值’全部内容,希望文章能够帮你解决javascript – 对象不支持属性或方法’值’所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:76874919,请注明来意。
标签: