将自身作为参数传入的 Javascript 对象

问题3r

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

单个对象应该能够从这个存储中删除自己。我的商店知道一个带有此对象参数的函数“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);
    }
}

所以使用关键字 this 是不正确的。然后我会传入按钮。

有人可以帮我吗?

dev8080

尝试在函数外为此使用一个名称:

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);
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

对象的Javascript函数作为参数

来自分类Dev

JavaScript 对象作为函数的参数

来自分类Dev

javascript中的.call是否将自身绑定到调用对象?

来自分类Dev

新对象作为javascript中的参数

来自分类Dev

Javascript-以可选参数作为对象的函数?

来自分类Dev

在JavaScript中将多个对象作为参数传递

来自分类Dev

新对象作为javascript中的参数

来自分类Dev

在Javascript中使用对象数组作为参数

来自分类Dev

作为参数传递的对象的 JavaScript 调用方法

来自分类Dev

对象作为Javascript中的函数参数

来自分类Dev

JavaScript函数作为对象

来自分类Dev

JavaScript 对象作为对象引用的属性

来自分类Dev

计算样式作为JavaScript对象

来自分类Dev

数字作为JavaScript对象的属性

来自分类Dev

JavaScript-作为对象的功能

来自分类Dev

Javascript对象键作为变量

来自分类Dev

Javascript推送对象作为克隆

来自分类Dev

在Javascript构造函数中将键/值对象作为参数传递

来自分类Dev

如何在Javascript中将对象的方法作为参数传递

来自分类Dev

如何在Javascript中将对象的方法作为参数传递

来自分类Dev

变量对象属性名称作为JavaScript中的参数?

来自分类Dev

在Javascript构造函数中将键/值对象作为参数传递

来自分类Dev

Javascript'Object.defineProperty'仅接受原型对象作为参数

来自分类Dev

使用ng-repeat对象值作为javascript参数

来自分类Dev

Javascript对象函数参数性能

来自分类Dev

使用参数迭代Javascript对象

来自分类Dev

Javascript对象传递参数

来自分类Dev

JavaScript对象私有参数

来自分类Dev

JavaScript对象设置/获取参数