快手
Opened this issue · 2 comments
LadderLay commented
- 自我介绍
- 项目 做了哪些优化
- 写9道题
1. `console.log(typeof typeof typeof null);` 打印出什么结果
2. `'abcdcba'.replace(/c/, "h");` 返回什么结果
3. 元素 p 内的文字最终什么颜色
```html
<style>
.classA { color:blue; }
.classB { color:red;}
</style>
<p class="classB classA">hello</p>
```
4. a 输出的内容是什么
```js
var a = 1;
function fn() {
console.log(a);
var a = 2;
}
fn();
```
5. data 会输出么,如果会输出内容是什么,不会输出请说明原因
```js
Promise.resolve('123')
.then(() => throw new Error('456'))
.catch((e) => console.log(e)))
.then((data) => console.log(data));
```
6. 如下代码输出什么
```js
var name = '123';
var obj = {
name: '456',
getName: function () {
function printName () {
console.log(this.name);
}
printName();
}
}
obj.getName();
```
7. 如下代码输出什么;
```js
var a = { x: 1 };
var b = a;
a.x = 2;
a = { n: 1 };
console.log(a);
console.log(b);
```
8. 如下代码输出什么;
```js
var count = 10;
function a() {
return count + 10;
}
function b() {
var count = 20;
return a();
}
console.log(b());
```
9. 写出 1 2 的打印顺序,并说明代码的执行过程
```js
setTimeout(() => { A
setTimeout(() => { B
console.log(1);
}, 0);
}, 0);
setTimeout(() => { C
console.log(2);
}, 100);
```
function formatColor(color) {
}
输入:'RGB(0, 10, 255)'
输出:'#000AFF'
给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。
有效字符串需满足:
左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
输入:s = "()[]{}"
输出:true
输入:s = "([)]"
输出:false
输入:s = "([])"
输出:true
给定一个加减运算字符串,计算其运算结果,注意运算符左右可能包含空格
输入:1 +2 +3
输出:6
输入:1-34 +20 -6
输出:-19
LadderLay commented
T3:
- typeof 的返回值为字符串
- 知识盲区:正则
- css样式覆盖优先级:不同类型, 标签选择器 = 伪类 < 类选择器 < ID选择器 < !important;同一类型,css文件中越靠后优先级越高;
- 声明提升
- Promise promise返回值
// return 值
返回状态为 fulfilled 的 Promise
如无return 则返回 undefined
// return Promise
// throw Error
返回状态为 rejected 的 Promise
- this 指向 输出123
- 亲戚题目:js 连等赋值
- JS词法作用域
- 输出 1 2
LadderLay commented
T4. 比较简洁的实现
// RGB转16进制
function formatColorTo16(color) {
// 数字转换成字符串时,Number.prototype.toString(radix) 可以指定转换的基数 radix 取值范围为2~32
let res = '#'
let tmp = color.slice(color.indexOf('(')+1,color.length-1).split(',')
tmp.forEach(ele => {
ele = Number(ele).toString(16).toUpperCase()
ele = ele.length === 1 ? '0'+ele : ele
res += ele
})
console.log(res)
return res
}
formatColorTo16('RGB(0, 10, 255)')
// 16进制转RGB
function formatColorToRGB(color) {
// 字符串转换成数字时, parseInt(str,radix) 可指定转换的基数 转换成对应的十进制数
let res = []
for(let i=1; i<color.length-1; i+=2) {
let tmp = color.slice(i,i+2)
res.push(parseInt(tmp,16)) //res.push(Number('0x'+tmp))
}
res = 'RGB('+res.join(',')+')'
console.log(res)
return res
}
formatColorToRGB('#000AFF')
T5
高频题 括号匹配 用栈解决
T6
处理运算式字符串 进阶 -> Leetcode 227 还有一个224