作为参数传入的Javascript对象
我有一个带一些信息的对象。另一方面,我有一个商店,里面有许多这种对象类型的对象 单个对象应该能够从此存储中删除自身。 我的存储知道一个函数“DeleteObjectFromStore”,该函数带有此对象的参数。 现在我想传入对象本身,但我不知道使用哪种语法 商店:作为参数传入的Javascript对象,javascript,Javascript,我有一个带一些信息的对象。另一方面,我有一个商店,里面有许多这种对象类型的对象 单个对象应该能够从此存储中删除自身。 我的存储知道一个函数“DeleteObjectFromStore”,该函数带有此对象的参数。 现在我想传入对象本身,但我不知道使用哪种语法 商店: class NoteStore { constructor() { this.notes = []; // Collection of all notes } DeleteNote(note)
class NoteStore {
constructor() {
this.notes = []; // Collection of all notes
}
DeleteNote(note) { // Delete this object from the store
var index = this.notes.indexOf(note);
if (index > -1)
array.splice(index, 1);
}
}
我的目标是什么
class Note {
constructor(noteTitle, noteText, noteStore) {
this.title = noteTitle; // name
this.text = noteText; // content
this.store = noteStore; // dataStore
}
CreateDeleteButton(parentDiv) { // Create a button for deleting itself
var data = this.store;
var deleteBtn = document.createElement("input");
deleteBtn.type = "button";
deleteBtn.value = "Delete";
deleteBtn.onclick = function() {
data.DeleteNote(); // <= missing parameter!
}
parentDiv.appendChild(deleteBtn);
}
}
课堂笔记{
构造函数(noteTitle、noteText、noteStore){
this.title=noteTitle;//名称
this.text=noteText;//内容
this.store=noteStore;//数据存储
}
CreateDeleteButton(parentDiv){//创建一个用于删除自身的按钮
var data=this.store;
var deleteBtn=document.createElement(“输入”);
deleteBtn.type=“按钮”;
deleteBtn.value=“删除”;
deleteBtn.onclick=函数(){
data.DeleteNote();//尝试在函数外部使用此名称:
CreateDeleteButton(parentDiv) { // Create a button for deleting itself
var data = this.store;
var noteObj = this;
var deleteBtn = document.createElement("input");
deleteBtn.type = "button";
deleteBtn.value = "Delete";
deleteBtn.onclick = function() {
data.DeleteNote( noteObj );
}
parentDiv.appendChild(deleteBtn);
}
尝试在函数外部使用此名称:
CreateDeleteButton(parentDiv) { // Create a button for deleting itself
var data = this.store;
var noteObj = this;
var deleteBtn = document.createElement("input");
deleteBtn.type = "button";
deleteBtn.value = "Delete";
deleteBtn.onclick = function() {
data.DeleteNote( noteObj );
}
parentDiv.appendChild(deleteBtn);
}
或者:deleteBtn.onclick=function(){data.DeleteNote(this);}.bind(this);
或者:deleteBtn.onclick=function(){data.DeleteNote(this);}.bind(this)
您是否试图从此中删除注释
实例。注释
?定义了数组
的位置?您是否试图从此中删除注释
实例。注释
?定义了数组
的位置?