iframe 的优缺点有哪些
概念:在HTML中有三种结构特征:树结构、层次结构、框结构。iframe正是框结构中的一员。每个iframe中都是一个独立的空间,它们拥有自己的window以及DOM。
优点:
①iframe能够原封不动的把嵌入的网页展现出来;
②如果有多个网页引用iframe,那么你只需要修改iframe的内容,就可以实现调用的每一个页面内容的更改,方便快捷。
③网页如果为了统一风格,头部和版本都是一样的,就可以写成一个页面,用iframe来嵌套,可以增加代码的可重用。
录屏
④如果遇到加载缓慢的第三方内容如图标和广告,这些问题可以由iframe来解决。
缺点:
①会产生很多页面不易管理;
②iframe框架结构有时会让人感到迷惑,如果框架个数多的话,可能会出现上下、左右滚动条,会分散访问者的注意力,用户体验度差。
③代码复杂,无法被一些搜索引擎索引到,这一点很关键,现在的搜索引擎爬虫还不能很好的处理iframe中的内容,所以使用iframe会不利于搜索引擎优化。
数组扁平化
概念:用于将嵌套多层的数组变成一维的数组
呈现解决方案有:
1. 通过concat将二维数组转化为一维数组
原理:通过将扩展运算符,将数组内部展开,并通过concat连接两个字符串的方式返回一个新的数组
let a = [12, 3, 45, [6, 7, 8]]
console.log(a) // [12, 3, 45, Array(3)]
console.log([].concat(...a)) // [12, 3, 45, 6, 7, 8]
2. 使用数组方法join和字符串方法split进行数组扁平化
原理:通过join方法将数组转化为以点隔开的字符串,在使用split把转化的字符串转化成字符串数组,通过。map方法将内部字符串转化数字类型的
let a = [4, 1, 2, 3, 6, [7, 8, [3, 9, 10, [4, 6, 11]]]]