2017-09-11 22 views
1

我知道,我可以使用的應用方法,但我無法理解如何使用它,即什麼進入括號。我試着閱讀它的文章,甚至看一些YT影片,但最終仍然感到困惑。如何使用.charCodeAt陣列上?

我想要做的,是通過使用charCodeAt以下字符串轉換成Unicode,然後我有,因爲我使用的是ROT13密碼添加13〜每個值。從那以後,我打算使用fromCharCode到的數值返回到信件得到一個消息,然後再使用。加入到得到完整的信息。

function rot13(str) { 

    var strSplit = str.split(''); 
    strSplit.charCodeAt.apply(); 

} 


rot13("SERR PBQR PNZC"); 
+0

你可以嘗試'String.prototype.charCodeAt(arr,index);' – Nemani

+0

可能值得注意的是,簡單地向charCode添加13對於旋轉密碼是不夠的,因爲它不會進行任何旋轉 – Dancrumb

回答

0

使用陣列功能:

function rot13(str) { 
    var strSplit = str.split(''); 
    var res = strSplit.map(l => l.charCodeAt()) 
    return res; 
} 


console.log(rot13("SERR PBQR PNZC")); 

您可能希望將數字作爲一個串起來Concat的:

console.log(rot13("SERR PBQR PNZC").map(l => JSON.stringify(l)).join("")) 

但是,這可能有一些注意事項...

0

陣列沒有charCodeAt方法。

可以做着分裂

試試這個

function rot13(str) 
 
{ 
 
    return str.split('').map(function(item) { 
 
    return String.fromCharCode(item.charCodeAt(0) + 13) 
 
    }).join("") 
 
} 
 

 
console.log(rot13("SERR PBQR PNZC"));

更通用

function rot(str, num) 
 
{ 
 
    return str.split('').map(function(item) { 
 
    return String.fromCharCode(item.charCodeAt(0) + num) 
 
    }).join("") 
 
} 
 

 
console.log(rot("SERR PBQR PNZC", 13));
後通過的所有字符重複