顾忌 2022-05-03 13:06:22
function search(arr, target) { let begin = 0; let end = arr.length - 1; const result = []; while (begin <= end) { const mid = (begin + end) >>> 1; if (target === arr[mid]) { let left = mid; let right = mid; result.push(mid) while (--left && left > 0) { if (arr[mid] === arr[left]) { result.unshift(left) } } while (++right && right < arr.length) { if (arr[mid] === arr[right]) { result.push(right) } } break; } else if (target > arr[mid]) { begin = mid + 1; } else { end = mid - 1; } } return result } // 返回出现目标数据的索引位置数组 第一次出现位置为result[0] 最后一次为 result[result.length -1] //const list1 = [1, 4, 4, 4, 5, 6, 7]; //console.log(search(list1, 4)); [1, 2, 3] 第一次出现索引位置为1 最后一次出现的索引位置为3
顾忌 2022-05-02 23:55:13
这里所说的同步异步, 并不是真正的同步异步, 它还是同步执行的。
这里的异步指的是多个state会合成到一起进行批量更新。
希望初学者不要被误导你的说法还是太片面了,可以看下官网的介绍
你是想说明什么,没太明白。
你的意思难道是从你截图给的这个可以看出reactsetState是或者部分是异步的?
---补充---
或者你的意思难道是标题是《何时setState是异步的》, 就断定 “setState确实可能是异步的”
- 共 1 页
- 1
大哥 这里面都没有return 为什么await _ (_) 会是上一次的方法呢 怎么累积的呢 ???
传统的 不都是这样的吗
var sum = [0, 1, 2, 3].reduce(function (accumulator, currentValue) {
return accumulator + currentValue;
}, 0);
能帮忙解答下吗 迷茫。。。。。
第 160 题:输出以下代码运行结果,为什么?如果希望每隔 1s 输出一个结果,应该如何改造?注意不可改动 square 方法