
结构化语言编程 ,用子程序和函数来控制执行的代码块
标签3();
标签1;
talk(男主,你吃饭了没有啊);
talk(女主,吃过饭了,你呢);
标签2;
talk(男主,要来点什么饮料?);
talk(女主,谢谢,我正口渴呢);
function 标签3(){
talk(男主,你做作业了没有啊);
talk(女主,已经上交了);
}
qiankun ——— 一套完整的微前端解决方案: >
我来逐行代码给你分析吧,至于转成易语言的话就无能为力了。
因为本人不会易语言,所以你再找个会易语言的人根据我的翻译在写出易语言的代码来吧。
/
这一行是定义一个函数,函数名称是xor_str
该函数接受两个参数,第一个参数名称是cipherurl,第二个是cipherkey
由于js是弱类型语言,因此没有参数类型的限制。
但是根据代码的意思可以得到这两个参数的类型都是字符串类型
因此,在易语言下你可先定义一个方法,该方法接受两个字符串类型的参数
/
var xor_str = function(cipherurl,cipherkey)
{
/
定义两个局部变量
第一个变量名为i,类型是整数类型,初始值为0
第二个变量名为url,类型是字符串类型,初始值为""
/
var i = 0, url = '',
/
定义了一个全局变量keylen,初始值为第二个参数的长度
因为第二个参数为字符串类型,所以这个变量的初始值就是这个字符串的长度
/
keylen = cipherkeylength,
/
这里又定义了一个全局变量,变量名为urllen,初始值为第一个参数的长度
因为第一个参数为字符串类型,所以这个变量的初始值就是这个字符串的长度
/
urllen = cipherurllength;
/
开始循环,循环条件为变量i小于变量urllen,每循环一次i的值加1
/
for(;i < urllen;i++){
/
定义一个变量ch
cipherurlcharCodeAt(i) 的意思是取得cipherurl变量内第i个字符的编码
cipherkeycharCodeAt(i%keylen)的意思是取得第(i除以keylen的余数)个字符的编码
cipherurlcharCodeAt(i) ^ cipherkeycharCodeAt(i%keylen)的意思是
把第一个编码值和第二个编码值按二进制位进行异或运算
即对两个数值的二进制写法进行比较
只有当相同位置上的数字只有一个1时,才返回1,
有两个1或者都是0则返回0,
然后转换成十进制数值
如:10001(二进制) ^ 01111(二进制)得到的二进制值为11110
最终转成十进制是30
/
var ch = cipherurlcharCodeAt(i) ^ cipherkeycharCodeAt(i%keylen);
/
StringfromCharCode(ch);意思是取得ch编码所在的字符
url += StringfromCharCode(ch);意思是吧ch对应的字符累加到url变量上
/
url += StringfromCharCode(ch);
} //结束循环
//返回url的值
return url;
};
我想我应该说的够清楚了,如果还帮不了你的话我没办法了。
以上就是关于javascript没有GOTO功能(虽然有关键字)我怎么实现标签的任意跳转来执行不同地方的语句块全部的内容,包括:javascript没有GOTO功能(虽然有关键字)我怎么实现标签的任意跳转来执行不同地方的语句块、阿里 qiankun 微前端框架实践、谁能帮我把这段异或解密的javascript翻译成易语言,求救等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)