长梦不多时 2022-05-04 13:54:17
我是这样理解的:
left + right > container 则此时需要收缩,反正则需要扩张
收缩计算过程:
- 1.计算收缩值:500 + 400 - 600 = 300
- 2.计算总的收缩权重值:500 * 2 + 400 × 1 = 1400
- 3.计算项目收缩空间:(项目宽度 - 项目宽度 × 总溢出空间 × flex-shrink / 总权重)
left = 500 - 500 × 300 × 2 / 1400 ≈ 285.71
right = 400 - 400 × 300 × 1 / 1400 ≈ 314.28扩张计算过程:
- 1.计算扩张总内容 container - (left + right)
- 2.计算每份扩张值:总内容/(left(flex-grow) + right(flex-grow))
- 3.计算项目夸张大小:(项目宽度 + 每份扩张值 × 扩张系数(flex-grow))
应该是这样
//如果left + right = container,flex-grow和flex-shrink 失效;
长梦不多时 2022-05-04 13:54:14
Array.prototype.spliceMy = function (startIndex, endIndex, ...item) { if (startIndex < 0) { startIndex = this.length + startIndex endIndex = this.length + startIndex + endIndex } else { endIndex = startIndex + endIndex } let arrStart = this.slice(0, startIndex) let arrEnd = this.slice(endIndex, this.length) console.log(arrStart, arrEnd) let returnArr = this.slice(startIndex, endIndex) let newArr = arrStart.concat(item).concat(arrEnd) for (let i = 0; i < newArr.length; i++) { this[i] = newArr[i]; } this.length = newArr.length return returnArr }
- 共 1 页
- 1
第 114 题:找出字符串中连续出现最多的字符和个数