Jialiang T.
Jialiang T.
请问现在北京还有社招吗?
```javascript function doo (num) { const str = `${num}`; const temp = str.length > 2 ? doo(str.slice(1)) : str.slice(1); return `${temp}${str[0]}` } ``` 先转成字符串,然后根据长度递归调用
空间换时间 Set 的实现一般是红黑树,查找的时间复杂度是O(logN),而V8的实现是哈希表,时间复杂度是O(1). 在数据量很大时,会比 `indexOf` 快很多 ``` function sulotion(arr1, arr2) { const temp = new Set(arr1); const res = new Set(); arr2.forEach(item => temp.has(item) && res.add(item)) return Array.from(res); } ```
@sisterAn 规范里好像没提到 await 内部实现了 generator, 如果从 polyfill 中的实现去断定 await 内部就是 generator……这样好像有点不严谨…… 另外 `await` 的例子其实可以转换为 ```javascript var a = 0 var b = () => { var temp = a; Promise.resolve(10)...
我比较反对用这道题作为面试题,因为这道题在Chrome71和Chrome73中表现不一,即答案不唯一。 上面也有同学说过了,**V8 团队已向 EcmaScript 标准提交 PR**,await的相关规范已经变更。 主要问题是**以下两段代码并不等价** ```JavaScript const p = Promise.resolve(1); new Promise((r) => { r(p); }) .then((res) => console.log(res)); ``` ```JavaScript const p = Promise.resolve(1); Promise.resolve(p) .then((res) =>...
1. 如果obj是null, 或者不是函数也不是object(即为包括Symbol在内的基本类型)则直接返回obj; 2. 如果obj是Date或RegExp就返回对应的新实例; 3. 在map中查找,找到则返回; 4. 以上都不是,则通过`new obj.constructor()`或`eval(obj.toString())`创建一个新实例temp,并保存进map,通过`Object.getOwnPropertyNames`和`Object.getOwnPropertySymbols`遍历obj的所有属性名,递归调用deepClone完成temp上所有属性的声明和赋值,最后返回temp ```javascript function deepClone(obj, map = new WeakMap()) { const type = typeof obj; if (obj === null || type !==...
useEasyReducer #502