gpt4 book ai didi

javascript - 在javascript中存储所有出现的特定字符的行号

转载 作者:行者123 更新时间:2023-11-30 14:12:25 26 4
gpt4 key购买 nike

我正在关注此链接 Find out the 'line' (row) number of the cursor in a textarea .当用户在 textarea 中写入时,我想将所有出现的“{”的行号存储在数组中。我想在它后面显示数组内容。

这是源码,我试过了:

<textarea rows="10" cols="100" id="editor" onkeypress="hello(event);" ></textarea>
<div id="lineNo"></div>

<script>

function hello(e)
{
var keyp=e.charCode;
var c=0,i;
var arr=new Array();
if(keyp=='123')
{
var arr[c++]=getLineNumber();
}
for (i=0;i<arr.length;i++)
{
document.getElementById("lineNo").innerHTML="Array content is... "+ arr[i];
//document.write(arr[i] + "<br >");
}
}
function getLineNumber() {
var textarea=document.getElementById("editor")
var x=textarea.value.substr(0, textarea.selectionStart).split("\n").length;
return x;
}

</script>

但是数组内容没有显示。请告诉我代码中有什么问题,如果可能的话,请告诉我一种更好的方法来存储 javascript 中所有出现的特定字符的行号并显示它。

最佳答案

这是你想做的事吗:

<textarea rows="10" cols="100" id="editor" onkeypress="hello(event);" ></textarea>
<div id="lineNo"></div>
<script>
var arr = [];
var c = 0;
function hello(e) {
var keyp=e.charCode;
if(keyp=='123') {
arr[c++] = getLineNumber();
}

document.getElementById("lineNo").innerHTML=
"Array content is... "+ arr.join(' ');
}

function getLineNumber() {
var ta=document.getElementById("editor")
var x=ta.value.substr(0, ta.selectionStart).split("\n").length;
console.log(x)
return x;
}
</script>

关于javascript - 在javascript中存储所有出现的特定字符的行号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54178687/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com