web-dev-qa-db-fra.com

Quel est équivalent php chr () et ord () fonctions en javascript

J'ai utilisé l'opérateur bitwise dans le code php qui renvoie la chaîne de décodage en base64. Je veux implémenter ce code php comme en javascript. Selon mes connaissances, chr() équivaut à String.fromCharCode(n) et ord() est n.charCodeAt(0). Mais les deux résultats finaux sont différents.

PHP code: -

<?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==

En Javascript Code: -

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)
}

Comme vous pouvez le voir ci-dessus, la sortie en javscript est différente de la sortie en php. J'ai besoin d'une sortie exacte en javascript qui retourne en code php. Merci 

11
vineet
var res = String.fromCharCode(65);

Cette fonction fonctionnera bien de la même manière que la fonction chr() renvoie le caractère en javascript.

11
Mayur Aglawe
function myFunction() {
var str = "HELLO WORLD";
var n = str.charCodeAt(0);
    document.getElementById("demo").innerHTML = n;
}

et pour ord () vous pouvez utiliser la fonction ci-dessus pour JavaScript 

6
Mayur Aglawe

ce code est l'équivalent javascript de la fonction PHP ord ().

function ord(str){return str.charCodeAt(0);}
0
jessie tessie