朮生 2022-05-04 13:53:47
function mybtoa(data) {
var result = [];
var bArray = [];
var baseTable = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghigklmnopqrstuvwxyz0123456789+/"
for (let index = 0; index < data.length; index++) {
bArray.push(data.charCodeAt(index).toString(2))
}
bArray = bArray.map(para => {
while (para.length < 8) {
para = "0" + para;
}
return para;
})
var str = bArray.join('');
var addZero =3- (str.length/8)%3
var addAscii='';
for (let index = 0; index < str.length%6; index++) {
str+='0'
}
for (let index = 0; index < addZero; index++) {
addAscii+="=";
}
for (let index = 0; index < str.length; index += 6) {
result.push(baseTable[parseInt(str.substr(index, 6), 2)]);
}
return result.join('')+addAscii
}
朮生 2022-05-04 13:50:29
// 如果是全部扁平就递归,传入已经处理的 output,递归中接着处理 output else { flatten(value, shallow, strict, output); idx = output.length; }
这个idx重置 有作用吗。。。麻烦又大佬知道的能告知一下,谢谢递归数组后,output会变啊,不变idx,后面再插入数组项不就变成替换以后的了吗,我不明白的是这里怎么不直接用push呢
递归时output会变,但不是函数里面会重新 定义var idx = output.length 吗 这和 递归函数之后的那句代码idx = output.length; 并没有关系啊
- 共 1 页
- 1
只是判断是不是function类型
第 101 题:修改以下 print 函数,使之输出 0 到 99,或者 99 到 0