JavaScript:向数组元素添加索引号的函数将继续应用索引号
好吧,这件事让我有点难堪。我创建了一个函数,这个函数根据数组长度在数组元素的前面添加一个数字。这里的希望是,最终用户在查看他们的图书列表时能够看到他们图书的索引号JavaScript:向数组元素添加索引号的函数将继续应用索引号,javascript,arrays,Javascript,Arrays,好吧,这件事让我有点难堪。我创建了一个函数,这个函数根据数组长度在数组元素的前面添加一个数字。这里的希望是,最终用户在查看他们的图书列表时能够看到他们图书的索引号 var myFormData = []; function addArrayElement() { for(i=0; i < myFormData.length; i++){ myFormData[i] = i+1 + ": " + myFormData[i] + "<br>";
var myFormData = [];
function addArrayElement() {
for(i=0; i < myFormData.length; i++){
myFormData[i] = i+1 + ": " + myFormData[i] + "<br>";
}
var myFormData=[];
函数addArrayElement(){
对于(i=0;i”;
}
如何检查单个数组元素是否已经有了数字,以及在将其打印到HTML时应用的断点
基本上,我只需要能够在用户提交时将索引号和断点添加到数组的新元素中,而不是将其应用到已提交的所有元素中
我看到了逻辑错误,我知道每次for循环运行时,它都会在数组的每个元素上迭代,并添加一个索引号和一个断点。我不知道如果没有for循环,我如何给每个元素一个唯一的标识符
通过存储数组元素的特定索引号,然后在打印到屏幕上时将其固定到输出上,是否可能以某种方式实现相同的效果。
像这样
document.getElementById('booktitle').innerHTML=INDEXNUMBER+“:”+myFormData+join(
);
我想这个数字会一直是这样的,我不确定
我不知道这段代码是否相关,但这些是我用来将书籍打印到HTML元素的函数&我处理提交到数组的数据
function printBooks() {
clearBook();
alert("Sorting your books");
//Function within the default sort method
//The inital array.sort(); is case sensitive and ruined the sorting procedure
//Had to refactor it in my code to make it sort correctly
myFormData.sort(function(a,b){
a = a.toLowerCase();
b = b.toLowerCase();
if(a == b) return 0;
return a < b ? -1 : 1;
});
addArrayElement();
document.getElementById('booktitle').innerHTML = myFormData;
}
function submitData()
{
value1 = document.getElementById("myTextBox").value;
var boxCheck = document.getElementById("myTextBox").value;
if (boxCheck.length < 1)
{
alert("Search field is blank")
}
else {
myFormData.push(value1);
alert("Data Contents: " + myFormData);
alert("You have submitted:" + " " + value1 + " " + "to your library." )
document.getElementById('booktitle').innerHTML = myFormData;
}
}
函数打印本(){
clearBook();
警惕(“整理你的书”);
//默认排序方法中的函数
//inital array.sort();区分大小写,破坏了排序过程
//必须在我的代码中重构它才能正确排序
排序(函数(a,b){
a=a.toLowerCase();
b=b.toLowerCase();
如果(a==b)返回0;
返回a
也许您可以检查您的元素,看看它是否已经包含
“
”
function addArrayElement() {
for(i=0; i < myFormData.length; i++){
if(myFormData[i].indexOf("<br>") < 0)
myFormData[i] = i+1 + ": " + myFormData[i] + "<br>";
}
因此,您的
arrayToDisplay
始终只包含前一个数组的索引
+值
请添加一些所需结果的示例。添加了每次提交新数组元素时发生的情况的图片。我只需要能够添加新数据,而无需将索引号应用于每一个数组元素ime我提交了一些东西。@ItzSunoItzSuno,我不认为你的图片与此相关。图片与此相关,我建议只为输出添加数字,而不是在数据内部添加数字。我将图片更改为更具解释性。如何将数字作为动态数字应用于输出?对于每个元素,如1:Book 2:Book 3:Book,不带f或循环
function addArrayElement() {
for(i=0; i < myFormData.length; i++){
if(myFormData[i].indexOf("<br>") < 0)
myFormData[i] = i+1 + ": " + myFormData[i] + "<br>";
}
var arrayToDisplay = [];
function addArrayElement() {
for(i=0; i < myFormData.length; i++){
arrayToDisplay[i] = i+1 + ": " + myFormData[i] + "<br>";
}