我有textarea和textare jsccode如下:
var checkName = (document.getElementById("List").value);
var tempcheckNames = checkName.split('\n');
并为数组赋予另一个带trim的数组。
for (var i = 0; i < tempcheckNames.length;i++){
checkNames = tempcheckNames[i].trim().split('\n');
}
但是checkNames是空的,因为赋值不是数组?
所以我想从textarea值修剪(我做了textarea值拆分所以我的数组是textarea值('\ n')
答案 0 :(得分:1)
将checkNames
定义为数组,使用.push()
将项目添加到checkNames
循环中的for
数组中,移除.split()
中对for
的调用} loop
for (var i = 0, checkNames = [] /* define `checkNames` as an array */
; i < tempcheckNames.length
; i++) {
checkNames.push(tempcheckNames[i].trim());
// .split('\n'); `.split()` not needed here
}
答案 1 :(得分:1)
您可以将值推送到数组以获取所有拆分值
var btn = document.getElementById('btn-show');
btn.addEventListener('click', btnShow);
function btnShow (e) {
var checkName = (document.getElementById("list").value);
var tempcheckNames = checkName.split('\n');
var checkNames = [];
for (var i = 0; i < tempcheckNames.length;i++){
checkNames.push(tempcheckNames[i].trim());
}
alert(checkNames);
}
<textarea id='list'> </textarea>
<button id='btn-show'>Show</button>
使用Array.map的功能方法
var btn = document.getElementById('btn-show');
btn.addEventListener('click', btnShow);
function btnShow (e) {
var checkName = (document.getElementById("list").value);
const checkNames = checkName.split('\n').map((name) => name.trim() );
alert(checkNames);
}
<textarea id='list'> </textarea>
<button id='btn-show'>Show</button>
答案 2 :(得分:1)
这样,那就更短了
var checkName = document.getElementById("List").value.split("\n").map(element => element.trim());