function expandedForm(num) {
let len = num.toString().length。
let n = num.toString().split(")。
let result = "";
for (let i = 0; i < len; i ) {
result = n[i] "0".repeat(len -1 -i)。 join(" ") 。
}
return result。
}
我想做的是像這樣將數字分開:
1220 = "1000 200 20"221 = "200 20 1"
我已經寫好了代碼(并非完美的代碼),它可以獲得所有必要的值,但我在用 " "將它們連接在一起時很費勁。我試著用.join(),但沒有成功。
uj5u.com熱心網友回復:
.join只對陣列起作用
>。function expandedForm(num) {
let len = num.toString().length。
let n = num.toString().split(")。
let result = "";
let arr=[];
for (let i = 0; i < len; i ) {
arr[i] = n[i] '0'.repeat(len-1-i)。
console.log(arr[i])。
}
let ans=arr.join(' '/span>)。
return ans。
}
console.log(expandedForm(1220)) /code>
<iframe name="sif1" sandbox="allow-forms allow-modals allow-scripts" class="snippet-box-edit snippet-box-result" frameborder="0"></iframe>
uj5u.com熱心網友回復:
Join的作業物件是陣列,而不是字串。它對所有索引的兩個后續索引進行字串化,你可以決定在它們之間添加什么。
function expandedForm(num) { // num = 321
let len = num.toString().length; // len = 3
let n = num.toString()。 split(""); / [3,2,1]/span>
let result = [];
for (let i = 0; i < len; i ) {
result.push(n[i] "0"/span>. repeat(len -1 -i)); // pushing till result = ['300', '20', '10' ]
}
return num ' = ' result.join(' ') 。
//連接 result[0] ' ' result[1] ' ' result[2]
}
expandedForm(321); // output: "321 = 300 20 1"/span>
uj5u.com熱心網友回復:
這里有一個方法
。let num = 221;
function expandedForm(num){
let len = num.toString().length。
let n = num.toString().split(")。
let result = "";
for (let i = 0; i < len; i ) {
let t = "0"
t = t.repeat(len-1-i)
if(result.length > 0){
n[i] !== '0'? result = ' ' n[i] t : result
} else {
n[i] !== '0'? 結果 = n[i] t : 結果
}
}
return 結果。
}
console.log(expandedForm(2200)
console.log(expandedForm(num))/code>
<iframe name="sif2" sandbox="allow-forms allow-modals allow-scripts" class="snippet-box-edit snippet-box-result" frameborder="0"></iframe>
uj5u.com熱心網友回復:
下面是我的方法,是一個更加數學化但干凈的代碼,你可以根據你的需要進行調整。
let result = parseInt(num / 1000)。
return result ;
}
function x100(num ) {
num = num % 1000;
let result = parseInt( num / 100) 。
return 結果。
}
function x10(num) {
num = num % 1000;
num = num % 100;
let result = parseInt(num /10)。
return result。
}
function x1( num) {
num = num % 1000;
num = num % 100;
num = num % 10;
return num
}
num = 12150 return num
console. log(num = `1000 x ${x1000(num)}, 100 x ${x100(num)}, 10 x ${x10(num)}`)```
uj5u.com熱心網友回復:
雖然有多種方法,但這里有一些一般的提示供你參考:
0項,除非輸入的數字正好是0(只有領先的0項是相關的,因為它將是唯一的此類項)str.split('')也可以是[...str]str.split('')[0]也可以只是 str[0]num是一個整數。function expandedForm(num) {
const s = num.toString()。
const n = s.length - 1;
const result = [...s] 。
.map((char, index) => char '0'.repeat(n - index))
.filter((str, index) =>/span> !index || str)
.join(' ')。
return result。
}
console.log(expandedForm(1220) )。
console.log(expandedForm(221) )。
console.log(expandedForm(10203) )。
console.log(expandedForm(0) )。
console. log(expandedForm(2n**64n));
<iframe name="sif3" sandbox="allow-forms allow-modals allow-scripts" class="snippet-box-edit snippet-box-result" frameborder="0"></iframe>
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/320175.html
標籤:
上一篇:在pandas中加入/合并/cat2個資料框架,其中關鍵列的拼寫不一致。
下一篇:使用連接來獲取特定的資料集
