作为参数传入的Javascript对象

作为参数传入的Javascript对象,javascript,Javascript,我有一个带一些信息的对象。另一方面,我有一个商店,里面有许多这种对象类型的对象 单个对象应该能够从此存储中删除自身。 我的存储知道一个函数“DeleteObjectFromStore”,该函数带有此对象的参数。 现在我想传入对象本身,但我不知道使用哪种语法 商店: class NoteStore { constructor() { this.notes = []; // Collection of all notes } DeleteNote(note)

我有一个带一些信息的对象。另一方面,我有一个商店,里面有许多这种对象类型的对象

单个对象应该能够从此存储中删除自身。 我的存储知道一个函数“DeleteObjectFromStore”,该函数带有此对象的参数。 现在我想传入对象本身,但我不知道使用哪种语法

商店:

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)
您是否试图从
此中删除
注释
实例。注释
?定义了
数组
的位置?您是否试图从
此中删除
注释
实例。注释
?定义了
数组
的位置?