What is equivalent php chr() and ord() functions in javascript(什么是Java脚本中的php chr()和order()函数)
本文介绍了什么是Java脚本中的php chr()和order()函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在php代码中使用了按位运算符,它返回Base64格式的解码字符串。我想实现与在Java脚本中相同的php代码。据我所知,chr()
相当于String.fromCharCode(n)
和ord()
是n.charCodeAt(0)
。但这两个最终输出是不同的。
PHP代码:-
<?php
$pass = "RuvEtrUt74gaDR5DufuChe";
$en = "";
foreach(str_split($pass) as $chr){
$b1=((($chr = ord($chr)) >> 1) & 0xFF);
$b2=($chr << (8 - 1));
$en = $en.chr( $b1|$b2 );
}
$en = base64_encode($en); //Output:- )º;¢:9ª:›³°")š"º3º¡4²
echo ($en);
echo (base64_decode($en)); //Output:- Kbo7ojo5qjqbGrOwIimaIrozuqE0sg==
在Java代码中:-
var pass = "RuvEtrUt74gaDR5DufuChe";
var en = "";
var passArr = pass.split('');
for (var i = 0; i < passArr.length; i++) {
var b1 = (((passArr[i] = passArr[i].charCodeAt(0)) >> 1) & 0xFF);
var b2 = (passArr[i] << (8 - 1));
en += chr(b1 | b2);
}
console.log('en',en);//Output:- ⤩㪺㬻⊢㨺㤹⪪㨺ᮛᨚ㎳グ∢⤩∢㪺㌳㪺↡㐴㊲
en = window.btoa(unescape(encodeURIComponent(en)));
console.log('en', en);//Output:- 4qSp46q646y74oqi46i646S54qqq46i64a6b4aia446z44Kw4oii4qSp4aqa4oii46q644yz46q64oah45C044qy
//need same as in php i.e, :- Kbo7ojo5qjqbGrOwIimaIrozuqE0sg==
function chr(codePt) {
if (codePt > 0xFFFF) {
codePt -= 0x10000
return String.fromCharCode(0xD800 + (codePt >> 10), 0xDC00 + (codePt & 0x3FF))
}
return String.fromCharCode(codePt)
}
正如您在上面看到的,javscript输出不同于php输出。我需要准确的输出在返回php代码的javascript中。谢谢
推荐答案
var res = String.fromCharCode(65);
此函数将与chr()
函数返回Java脚本中的字符相同。
这篇关于什么是Java脚本中的php chr()和order()函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:什么是Java脚本中的php chr()和order()函数
基础教程推荐
猜你喜欢
- 响应更改 div 大小保持纵横比 2022-01-01
- 当用户滚动离开时如何暂停 youtube 嵌入 2022-01-01
- 在 JS 中获取客户端时区(不是 GMT 偏移量) 2022-01-01
- 在for循环中使用setTimeout 2022-01-01
- 有没有办法使用OpenLayers更改OpenStreetMap中某些要素 2022-09-06
- Karma-Jasmine:如何正确监视 Modal? 2022-01-01
- 我什么时候应该在导入时使用方括号 2022-01-01
- 动态更新多个选择框 2022-01-01
- 角度Apollo设置WatchQuery结果为可用变量 2022-01-01
- 悬停时滑动输入并停留几秒钟 2022-01-01