javascript - 对象不支持属性或方法 'values'

标签 javascript html

<分区>

我正在尝试编写一些代码来获取 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 - 对象不支持属性或方法 'values',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43254982/

相关文章:

javascript - 如何找到Shiny最终输出的HTML/CSS/JavaScript文件?

php - 防止在达到最小高度或粘贴文本时创建新的 div

css - zurb foundation,在 320 - 480 屏幕尺寸的行中具有单个响应图像

javascript - 如何通过在 React 中传递对父组件的引用来关注嵌套元素?

php - 通过滑动效果显示/隐藏 div

javascript - 旋转后得到正确的左上角坐标

javascript - 如何将数据插入具有多个同名输入的数据库中?

javascript - Angular 数据-前缀属性访问

javascript - 如何从 package.json 中删除冗余/未使用的依赖项?

javascript - 如何将 Material UI Table 放在页面中间?