想辦法把一個字符串13579先變成Array——[1, 3, 5, 7, 9],再利用reduce()就可以寫出一個把字符串轉換為Number的函數

想辦法把一個字符串13579先變成Array——[1, 3, 5, 7, 9],再利用reduce()就可以寫出一個把字符串轉換為Number的函數。

練習:不要使用JavaScript內置的parseInt()函數,利用map和reduce操作實現一個string2int()函數:

'use strict';

function string2int(s) {

return s.split('').map(
function(x){
return x.charCodeAt(0) - '0'.charCodeAt(0);
}
).reduce(
function(x, y){
return x*10+y;
}
);
}

// 測試:
if (string2int('0') === 0 && string2int('12345') === 12345 && string2int('12300') === 12300) {
if (string2int.toString().indexOf('parseInt') !== -1) {
alert('請勿使用parseInt()!');
} else if (string2int.toString().indexOf('Number') !== -1) {
alert('請勿使用Number()!');
} else {
alert('測試通過!');
}
}
else {
alert('測試失敗!');
}

感謝查看
奉上福利一枚
http://note.youdao.com/noteshare?id=a2558c7afd02fa55ff9814fd429c8884&sub=69B8AAF714104B5DA168E9D17B53C682

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 背景 一年多以前我在知乎上答了有關LeetCode的問題, 分享了一些自己做題目的經驗。 張土汪:刷leetcod...
    土汪閱讀 12,769評論 0 33
  • 第三章 基本概念 3.1 語法 ECMAScript標識符一般采用駝峰大小寫格式,也就是第一個字母小寫,剩下的每個...
    小雄子閱讀 580評論 0 1
  • 第一章: JS簡介 從當初簡單的語言,變成了現在能夠處理復雜計算和交互,擁有閉包、匿名函數, 甚至元編程等...
    LaBaby_閱讀 1,697評論 0 6
  • 一葉梧桐便知秋, 沖天蟬鳴震耳周。 平生不做驚人事, 不唱到死誓不休。
    秦桑低低閱讀 445評論 0 5
  • 早上鬧鐘響了十五分鐘,我完全沒聽到。 中午上了舞蹈室練習,但很簡單的舞蹈動作我都扒不下來。連方向‘8點’我都忘了。...
    逆風追夢人閱讀 189評論 0 0