开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 897|回复: 11
收起左侧

[求助] java代码转换成js

[复制链接]
结帖率:83% (5/6)
发表于 2023-5-27 22:08:13 | 显示全部楼层 |阅读模式   江苏省常州市
求把这段java代码转换成可以运行的js代码

ep.txt

3.14 KB, 下载次数: 18, 下载积分: 精币 -2 枚

结帖率:100% (1/1)
发表于 2023-5-27 22:20:58 | 显示全部楼层   安徽省合肥市
。。。。。看看怎么样

Untitled-1.txt

1.96 KB, 下载次数: 9, 下载积分: 精币 -2 枚

回复 支持 反对

使用道具 举报

结帖率:83% (38/46)

签到天数: 6 天

发表于 2023-5-27 22:23:36 | 显示全部楼层   浙江省金华市
这有点麻烦呀  
回复 支持 反对

使用道具 举报

结帖率:83% (5/6)

签到天数: 13 天

 楼主| 发表于 2023-5-27 22:25:20 | 显示全部楼层   江苏省常州市
dingli123 发表于 2023-5-27 22:20
。。。。。看看怎么样

提示语法错误
回复 支持 反对

使用道具 举报

结帖率:83% (38/46)

签到天数: 6 天

发表于 2023-5-27 22:35:44 | 显示全部楼层   浙江省金华市

他这个还是JAVA代码呀 肯定错误呀
回复 支持 反对

使用道具 举报

发表于 2023-5-27 22:49:57 | 显示全部楼层   河北省石家庄市
遇事不决gpt
回复 支持 反对

使用道具 举报

结帖率:100% (26/26)
发表于 2023-5-27 23:03:46 | 显示全部楼层   山西省太原市
这看起来是BASE64编解码啊,百du一下JS是如何实现 Base64编解码的。
回复 支持 反对

使用道具 举报

结帖率:83% (5/6)

签到天数: 5 天

发表于 2023-5-28 11:58:39 | 显示全部楼层   黑龙江省哈尔滨市
[JavaScript] 纯文本查看 复制代码
const afX = 'KLMNOPQRSTUVWXYZABCDEFUVWXYabGHIJcde0fghijklmnopqrs123tuvwxyz456789+/';
 function init() {
  let afY = new Uint8Array(128);
  for (let i = 0; i < afX.length; i++) {
    afY[afX.charCodeAt(i)] = i;
  }
  return afY;
}
 const afY = init();
 function encode(data) {
  let sb = [];
  for (let i = 0; i < data.length; i += 3) {
    let b = [0, 0, 0, 0];
    let tmp = 0;
    for (let j = 0; j < 3; j++) {
      let dIdx = i + j;
      if (dIdx < data.length) {
        b[j] = tmp | (data[dIdx] >>> ((j * 2) + 2));
        tmp = (data[dIdx] << (((2 - j) * 2) + 2) & 255) >>> 2;
      } else {
        b[j] = tmp;
        tmp = 64;
      }
    }
    b[3] = tmp;
    for (let j = 0; j < 4; j++) {
      if (b[j] <= 63) {
        sb.push(afX[b[j]]);
      } else {
        sb.push('=');
      }
    }
  }
  return sb.join('');
}
 function decode(input) {
  let data = new Uint8Array(input.length);
  for (let i = 0; i < input.length; i++) {
    data = afY[input.charCodeAt(i)];
  }
  let output = [];
  for (let i = 0; i < data.length; i += 4) {
    let b = [0, 0, 0];
    let tmp = 0;
    for (let j = 0; j < 3; j++) {
      let dIdx = i + j;
      let nextIdx = dIdx + 1;
      if (nextIdx < data.length && data[nextIdx] >= 0) {
        b[j] = ((data[dIdx] << ((j * 2) + 2)) & 255) | (data[nextIdx] >>> (((2 - (j + 1)) * 2) + 2));
        tmp++;
      }
    }
    for (let j = 0; j < tmp; j++) {
      output.push(b[j]);
    }
  }
  return new Uint8Array(output);
}



补充内容 (2023-5-28 12:23):
9楼补充GPT-4转换的代码
回复 支持 反对

使用道具 举报

结帖率:83% (5/6)

签到天数: 5 天

发表于 2023-5-28 12:22:30 | 显示全部楼层   黑龙江省哈尔滨市
[JavaScript] 纯文本查看 复制代码
const afX = ['K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'];
let afY = new Array(128).fill(-1);

function init() {
    for (let i = 0; i < afX.length; i++) {
        afY[afX.charCodeAt(0)] = i;
    }
}

function encode(byteArray) {
    let sb = [];
    for (let i = 0; i < byteArray.length; i += 3) {
        let bArr2 = new Array(4).fill(0);
        let b = 0;
        for (let i2 = 0; i2 <= 2; i2++) {
            let i3 = i + i2;
            if (i3 <= byteArray.length - 1) {
                bArr2[i2] = b | (byteArray[i3] >>> ((i2 * 2) + 2));
                b = (((byteArray[i3] << ((2 - i2) * 2 + 2)) & 0xFF) >>> 2);
            } else {
                bArr2[i2] = b;
                b = 64;
            }
        }
        bArr2[3] = b;
        for (let i4 = 0; i4 <= 3; i4++) {
            if (bArr2[i4] <= 63) {
                sb.push(afX[bArr2[i4]]);
            } else {
                sb.push('=');
            }
        }
    }
    return sb.join('');
}

function decode(str) {
    let byteArrayOutputStream = [];
    let bytes = new TextEncoder().encode(str);
    let bArr = new Array(bytes.length).fill(0);
    for (let i = 0; i < bytes.length; i++) {
        bArr = afY[bytes];
    }
    for (let i2 = 0; i2 < bArr.length; i2 += 4) {
        let bArr2 = new Array(3).fill(0);
        let i3 = 0;
        for (let i4 = 0; i4 <= 2; i4++) {
            let i5 = i2 + i4;
            let i6 = i5 + 1;
            if (i6 <= bArr.length - 1 && bArr[i6] >= 0) {
                bArr2[i4] = (((bArr[i5] << ((i4 * 2) + 2)) & 0xFF) | (bArr[i6] >>> (((2 - (i4 + 1)) * 2) + 2)));
                i3++;
            }
        }
        for (let i7 = 0; i7 < i3; i7++) {
            byteArrayOutputStream.push(bArr2[i7]);
        }
    }
    return new Uint8Array(byteArrayOutputStream);
}

init();

回复 支持 反对

使用道具 举报

结帖率:83% (5/6)

签到天数: 13 天

 楼主| 发表于 2023-5-28 13:28:30 | 显示全部楼层   江苏省常州市
xwwyt 发表于 2023-5-28 12:22
[mw_shl_code=javascript,true]const afX = ['K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'A', 'B' ...

哥,语法错误
回复 支持 反对

使用道具 举报

  高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表