2017-05-24 19 views

回答

4

沒有。沒有塊的箭頭函數必須是表達式,while循環不是(theyre語句)。你可以做某事像

function whileExp(check,callback){ 
while(typeof check=="function"?check():check){ 
    if(callback) callback(); 
} 
} 

(counter=>whileExp(()=>--counter,()=>alert(counter)))(10); 

但是我不知道爲什麼這應該是有用的

2

你缺少數組的聲明的名字,我不知道這句法while循環,但低於此語法正常工作

var arr = [1,2,3,4,5,6]; 
 

 
var len = arr.length; 
 

 
const iter = i => {while(i > 0){console.log(i); i--;}}; 
 

 
iter(len);

+0

你能不能做到這一點嗎 – Rick

+0

我你在一條線上做,我想你可以 –

1

您可以使用Array.prototype.reduceRight(),逗號操作

const arr = [1,2,3,4,5,6]; 
 

 
const iter = (a, b) => (console.log(a), b); 
 

 
arr.reduceRight(iter);

+1

你是做什麼的意思是「控制數組上的迭代次數」?Question中的代碼只調用'console.log()'。期望的結果是什麼? – guest271314

+0

@Arrow _「我只想遍歷一半的arr唉。我不想在此之外進行迭代。「_這個要求在原始問題中沒有描述,請參閱https://stackoverflow.com/help/how-to-ask – guest271314

+0

@Arrow建議在問題本身的文本中具體明確什麼要求,而不是試圖按照新的要求進入問題的評論。目前的要求是不明確的。使用'break'來停止'for'或'while'循環的迭代。 – guest271314

相關問題