JS手書きparseIntの例

小云云
小云云オリジナル
2018-02-02 13:17:071631ブラウズ

手書きの parseInt の実装: 要件は単純で、文字列数値を実数に変換するだけですが、Number() などの JS のネイティブな文字列から数値への API は使用できません。この記事では主に JS の実装について説明します。手書きの parseInt の内容は、みんなの参照と学習のために共有されます。以下では多くを述べませんが、詳細な紹介を見てみましょう。

コード例

function _parseInt(str, radix) {
 let str_type = typeof str;
 let res = 0;
 if (str_type !== 'string' && str_type !== 'number') {
  // 如果类型不是 string 或 number 类型返回NaN
  return NaN
 }

 // 字符串处理
 str = String(str).trim().split('.')[0]
 let length = str.length;
 if (!length) {
  // 如果为空则返回 NaN
  return NaN
 }

 if (!radix) {
  // 如果 radix 为0 null undefined
  // 则转化为 10
  radix = 10;
 }
 if (typeof radix !== 'number' || radix < 2 || radix > 36) {
  return NaN
 }

 for (let i = 0; i < length; i++) {
  let arr = str.split('').reverse().join('');
  res += Math.floor(arr[i]) * Math.pow(radix, i)
 }

 return res;
}

関連する推奨事項:

JS は parseInt を使用して数値を解析し、合計の詳細な例を実装します

js の parseInt 関数の簡単な紹介

JavaScript の探索: 数値には parseInt() を使用します変換

以上がJS手書きparseIntの例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。