layui / layui

一套遵循原生态开发模式的 Web UI 组件库,采用自身轻量级模块化规范,易上手,可以更简单快速地构建网页界面。
https://layui.dev
MIT License
29.72k stars 7.38k forks source link

一个广泛存在于框架中的bug,是否数组类型的判断 #380

Closed jiaowochunge closed 2 years ago

jiaowochunge commented 6 years ago

bug描述:框架判断一个对象是否数组是用 obj.constructor === Array 。 这个判断方式在跨frame时并不管用。我在追踪这个bug的过程中了解到,原生API和jquery都提供是否数组的方法,Array.isArray 重现bug:这个方式判断数组,当跨frame时就会失败。我在某个页面打开一个对话框,success回调中为对话框中的iframe设置数据源,然后iframe中的table无法通过这个数据渲染。

wingmeng commented 5 years ago
// use ES5:
Array.isArray([]);  // true

// use jQuery:
$.isArray([]);  // true
sentsim commented 2 years ago

layui 在后面的版本已经提供了 layui.isArray() 方法来判断是否数组