国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 語(yǔ)言 > JavaScript > 正文

自己實(shí)現(xiàn)string的substring方法 人民幣小寫轉(zhuǎn)大寫,數(shù)字反轉(zhuǎn),正則

2024-05-06 14:21:15
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
水平有限,不保證我的方案絕對(duì)正確,如有錯(cuò)誤歡迎指出。

一、自己實(shí)現(xiàn)string的substring方法

方法一:用charAt取出截取部分
代碼如下:
String.prototype.mysubstring=function(beginIndex,endIndex){
var str=this,
newArr=[];
if(!endIndex){
endIndex=str.length;
}
for(var i=beginIndex;i<endIndex;i++){
newArr.push(str.charAt(i));
}
return newArr.join("");
}

//test
"Hello world!".mysubstring(3);//"lo world!"
"Hello world!".mysubstring(3,7);//"lo w"

方法二:把字符串轉(zhuǎn)換成數(shù)組然后取出需要部分
代碼如下:
String.prototype.mysubstring=function(beginIndex,endIndex){
var str=this,
strArr=str.split("");
if(!endIndex){
endIndex=str.length;
}
return strArr.slice(beginIndex,endIndex).join("");
}

//test
console.log("Hello world!".mysubstring(3));//"lo world!"
console.log("Hello world!".mysubstring(3,7));//"lo w"

方法三:取出頭尾部分,然后用replace去掉多余部分,適用于beginIndex較小,字符串長(zhǎng)度-endIndex較小的情況
代碼如下:
String.prototype.mysubstring=function(beginIndex,endIndex){
var str=this,
beginArr=[],
endArr=[];
if(!endIndex){
endIndex=str.length;
}
for(var i=0;i<beginIndex;i++){
beginArr.push(str.charAt(i));
}
for(var i=endIndex;i<str.length;i++){
endArr.push(str.charAt(i));
}
return str.replace(beginArr.join(""),"").replace(endArr.join(""),"");
}

//test
console.log("Hello world!".mysubstring(3));//"lo world!"
console.log("Hello world!".mysubstring(3,7));//"lo w"

二、一萬(wàn)億以內(nèi)的人民幣小寫轉(zhuǎn)大寫,暫不考慮連續(xù)零的處理
方法一(七行代碼實(shí)現(xiàn)):
代碼如下:
function moneyCaseConvert(num){
var upperArr=["零","壹","貳","叁","肆","伍","陸","柒","捌","玖"],
levelArr=["","拾","佰","仟","萬(wàn)","拾","佰","仟","億","拾","佰","仟","萬(wàn)"],
numArr=num.toString().split("").reverse(),
result=[];
for(var i=numArr.length-1;i>=0;i--)
result.push(upperArr[numArr[i]]+levelArr[i]);
return result.join("");
}

//Test
console.log(CaseConversion(1234567891234));
//壹萬(wàn)貳仟叁佰肆拾伍億陸仟柒佰捌拾玖萬(wàn)壹仟貳佰叁拾肆

console.log(CaseConversion(987654321));
//玖億捌仟柒佰陸拾伍萬(wàn)肆仟叁佰貳拾壹

console.log(CaseConversion(1234));
//壹仟貳佰叁拾肆

三、數(shù)字反轉(zhuǎn),輸入123返回321
方法一:
代碼如下:
function numReverse(num){
return parseInt(num.toString().split("").reverse().join(""));
}
//Test
console.log(numReverse(123456));
//654321

方法二:
代碼如下:
function numReverse(num){
var numArr=num.toString().split(""),
len=numArr.length,
result=0;
for(var i=len-1;i>=0;i--){
result+=numArr[i]*Math.pow(10,i);
}
return result;
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 治县。| 广德县| 高青县| 万宁市| 巧家县| 靖西县| 托里县| 西藏| 青田县| 互助| 霍山县| 安仁县| 贞丰县| 桃源县| 漳州市| 龙川县| 沅江市| 宜川县| 金门县| 象州县| 台东县| 达尔| 罗山县| 扎赉特旗| 石棉县| 宁波市| 红原县| 哈巴河县| 独山县| 澜沧| 广宗县| 博乐市| 文水县| 扎兰屯市| 拜泉县| 和田市| 鹿泉市| 忻城县| 三亚市| 闽侯县| 昌黎县|