Javascript 如何使用新的输入数据更新“sortNotes”函数?

Javascript 如何使用新的输入数据更新“sortNotes”函数?,javascript,arrays,events,Javascript,Arrays,Events,我正在做一个便笺应用程序: 我在javascript中创建了一个常量“notes”,用于分配内部对象数组。每个对象都有一个标题和描述以及相应的值 创建了一个分配给常数“sortNotes”的函数,该函数通过按标题a到z的字母顺序对对象进行排序 创建了一个分配给常量“notesOutput”的函数,该函数为每个对象创建一个元素h5作为标题,一个元素p作为描述 创建了一个分配给常数“newNote”的函数,该函数在数组中创建一个具有相同属性title和description的新对象 最后,但并非最不

我正在做一个便笺应用程序:

我在javascript中创建了一个常量“notes”,用于分配内部对象数组。每个对象都有一个标题和描述以及相应的值

创建了一个分配给常数“sortNotes”的函数,该函数通过按标题a到z的字母顺序对对象进行排序

创建了一个分配给常量“notesOutput”的函数,该函数为每个对象创建一个元素h5作为标题,一个元素p作为描述

创建了一个分配给常数“newNote”的函数,该函数在数组中创建一个具有相同属性title和description的新对象

最后,但并非最不重要的是,使用submit event为表单创建了一个事件侦听器。它负责在单击submit按钮时获取标题输入和描述输入的值

然后我用正确的参数调用函数“newNote”,在数组中创建一个新对象。-很明显,它是有效的

调用函数“notesOutput”在输出中显示带有标题和说明的新注释-显然它可以工作

之前,我调用了函数'sortNotes',该函数负责按字母顺序从A到Z排列注释。发生的事情并不像我预期的那样有效。不需要计算输出中已经存在的注释以及之后新创建的注释,因此没有很好的组织。我想我必须更新这个函数“sortNotes”中负责排序的内容,但我不知道是什么

常量注释=[{ 标题:“银行”, 描述:“每月为我的账户节省100欧元” }, { 标题:“下一次旅行”, 描述:“夏天去西班牙” }, { 标题:"健康",, 描述:“别忘了考试” }, { 标题:“办公室”, 描述:“买一把更好的椅子和一张更好的桌子来工作” }] const sortNotes=函数注释{ const organize=notes.sortfunctiona,b{ 如果a.titleb.title{ 返回1 }否则{ 返回0 } } 返回组织 } 索特诺特斯酒店 const notesOutput=函数注释{ const ps=notes.forEachfunctionnote{ const title=document.createElement'h5' const description=document.createElement'p' title.textContent=note.title description.textContent=note.description document.querySelector'p-container'.appendChildtitle document.querySelector'p-container'。追加子描述 } 返回ps } notesOutputnotes const newNote=函数标题输入,描述输入{ notes.push{ 标题:标题输入, 描述:描述输入 } } const form=document.querySelector'form-submit' const inputTitle=document.querySelector'form-input-title' 焦点 表单.addEventListener'submit',函数E{ e、 防止违约 常量newTitle=e.target.elements.titleNote.value const newDescription=e.target.elements.descriptionNote.value newNotenewTitle,newDescription 索特诺特斯酒店 notesOutputnotes console.lognotes e、 target.elements.titleNote.value= e、 target.elements.descriptionNote.value= 焦点 } * { 字体系列:“Roboto”,无衬线; 颜色:白色; 字母间距:.1rem; 保证金:0; 填充:0; 框大小:边框框; } html{ 字体大小:100%; } 身体{ 最小高度:100vh; 显示器:flex; 证明内容:中心; 对齐项目:居中; } .集装箱{ 背景色:海绿; 填充:2rem; } .container-p{ 填充:2rem0; } 形式{ 宽度:100%; 显示器:flex; 弯曲方向:立柱; 调整项目:灵活启动; } 标签{ 文本转换:大写; 字号:600; 字母间距:.25rem; } 输入 文本区{ 宽度:100%; 填充:.5rem; 保证金:1rem 0; 颜色:0d4927; 字体大小:粗体; 字号:1rem; } .container-submit\u按钮{ 字号:1rem; 字体大小:粗体; 文本转换:大写; 颜色:0d4927; 填充:1rem2rem; 边框:2px实心0d4927; 光标:指针; 保证金:1rem 0; 自对准:柔性端; } h1{ 字号:2rem; 字母间距:.3rem; } 氢{ 字体大小:1.5rem; 字体大小:300; } h5{ 字体大小:1.05rem; 保证金:1雷姆0.8雷姆0; 填充:.4rem; 字母间距:.12rem; 显示:内联块; 边框:2倍实心; } NOTES应用程序 记笔记,永不忘记 标题 描述 添加注释 sort对数组进行适当的排序,这样就不需要返回任何内容的函数

你的那一类是区分大小写的。如果要再次区分大小写,请删除toLowerCase

不要在函数中传递注释。它需要是一个全局对象

在输出之前清空容器

不需要归还未使用的物品

让注释=[{ 标题:“银行”, 描述:“每月为我的账户节省100欧元” }, { 标题:“办公室”, 描述:“买一把更好的椅子和一张更好的桌子来工作” }, { 标题:"健康",, 描述 爱雍:“别忘了考试” }, { 标题:“下一次旅行”, 描述:“夏天去西班牙” }] 常数sortNotes=函数,b{ 如果a.title.toLowerCaseb.title.toLowerCase{ 返回1 }否则{ 返回0 } } const notesOutput=函数{ querySelector'p-container'.innerHTML=; notes.sortsortNotes notes.forEachfunctionnote{ const title=document.createElement'h5' const description=document.createElement'p' title.textContent=note.title description.textContent=note.description document.querySelector'p-container'.appendChildtitle document.querySelector'p-container'。追加子描述 } } const newNote=函数标题输入,描述输入{ notes.push{ 标题:标题输入, 描述:描述输入 } } const form=document.querySelector'form-submit' const inputTitle=document.querySelector'form-input-title' 表单.addEventListener'submit',函数E{ e、 防止违约 常量newTitle=e.target.elements.titleNote.value const newDescription=e.target.elements.descriptionNote.value newNotenewTitle,newDescription notesOutputnotes e、 target.elements.titleNote.value= e、 target.elements.descriptionNote.value= 焦点 } 注释输出 焦点 * { 字体系列:“Roboto”,无衬线; 颜色:白色; 字母间距:.1rem; 保证金:0; 填充:0; 框大小:边框框; } html{ 字体大小:100%; } 身体{ 最小高度:100vh; 显示器:flex; 证明内容:中心; 对齐项目:居中; } .集装箱{ 背景色:海绿; 填充:2rem; } .container-p{ 填充:2rem0; } 形式{ 宽度:100%; 显示器:flex; 弯曲方向:立柱; 调整项目:灵活启动; } 标签{ 文本转换:大写; 字号:600; 字母间距:.25rem; } 输入 文本区{ 宽度:100%; 填充:.5rem; 保证金:1rem 0; 颜色:0d4927; 字体大小:粗体; 字号:1rem; } .container-submit\u按钮{ 字号:1rem; 字体大小:粗体; 文本转换:大写; 颜色:0d4927; 填充:1rem2rem; 边框:2px实心0d4927; 光标:指针; 保证金:1rem 0; 自对准:柔性端; } h1{ 字号:2rem; 字母间距:.3rem; } 氢{ 字体大小:1.5rem; 字体大小:300; } h5{ 字体大小:1.05rem; 保证金:1雷姆0.8雷姆0; 填充:.4rem; 字母间距:.12rem; 显示:内联块; 边框:2倍实心; } NOTES应用程序 记笔记,永不忘记 标题 描述 添加注释