今天,分配的任務做完,問我們組長有沒有工作需要幫助,她來了句把自己**優化下,影響效能的地方,以及 不規範的地方 自己優化下,然後給她看... (等著被吊)
優化前 (好吧確實臃腫)
handlesubmit = () => ,
// contactstore: ,
// } = this.props;
//上傳 first, second, data
if (!this.state.firstselectname) );
return false;
}if (!this.state.selectphone) );
return false;
}if (!this.state.secendselectname) );
return false;
}if (!this.state.selectphone_) );
return false;
}if (this.state.selectphone === this.state.selectphone_) );
return false;
}//上傳通訊錄
}
優化後 (指導下...)
...
static defaultprops =
};....
handlesubmit = () => = this.props;
const formcheckarray = ["firstselectname","selectphone","secendselectname","selectphone_"];
const result = formcheckarray.find(key=> !this.state[key]);
if(result));
return false;
}if (this.state.selectphone === this.state.selectphone_) );
return false;
}//上傳通訊錄
}
是不是舒服多了 ,這裡有個優化原則 就是把靜態內容 統一管理。 還有其他的優化方案,待研究。。。。
這裡記錄下 es6的 find的使用:
語法:arr.find(callback[, thisarg])
描述:
find 方法對陣列中的每一項元素執行一次 callback 函式,直至有乙個 callback 返回 true。當找到了這樣乙個元素後,該方法會立即返回這個元素的值,否則返回 undefined
注意 callback 函式會為陣列中的每個索引呼叫即從 0 到length - 1,而不僅僅是那些被賦值的索引,這意味著對於稀疏陣列來說,該方法的效率要低於那些只遍歷有值的索引的方法。
callback 函式帶有3個引數:當前元素的值、當前元素的索引,以及陣列本身。
如果提供了 thisarg 引數,那麼它將作為每次 callback 函式執行時的上下文物件,否則上下文物件為 undefined
find 方法不會改變陣列。
在第一次呼叫 callback函式時會確定元素的索引範圍,因此在 find 方法開始執行之後新增到陣列的新元素將不會被 callback 函式訪問到。如果陣列中乙個尚未被callback函式訪問到的元素的值被callback函式所改變,那麼當callback函式訪問到它時,它的值是將是根據它在陣列中的索引所訪問到的當前值。被刪除的元素仍舊會被訪問到。
返回值: 當某個元素通過 callback 的測試時,返回陣列中的乙個值,否則返回 undefined。
Jquery,JS的表單提交
frm為某個表單form的id var fr document.getelementbyid frm fr.action deptdeleteservlet fr.method post fr.submit 表單重置 document.getelementbyid frm reset frm att...
from表單的提交
from表單的提交 1 get 和 post get 方式提交中文亂碼。post方式 中文正常。2 form表單的提交方式 formid reg 使用者名稱 input name uname type text id uname br 密碼 input name upwd type text id ...
jsp的表單提交
原先一直以為不管的是表單提交還是url傳值都是不能傳遞中文的,但是在公司專案中卻看到了,用表單提交中文字串的例項,我真的 見多識廣 啊!很菜 更菜 誰有我菜 還有少用request.getparameter request.getattribute 等與servlet 有關的api,保持action...