gpt4 book ai didi

javascript - 如何在具有多个继承属性的 Javascript 中表示分层产品目录 [分类法]?

转载 作者:行者123 更新时间:2023-11-30 18:31:10 28 4
gpt4 key购买 nike

我的产品目录是一个经典的树状层次结构,具有不同级别的子分组。在子分组的每个级别,产品将共享 type:value 的属性。在树的最底层,将有继承了上层所有属性的产品,加上自己独特的属性。

我设想使用两个 TreeView ,一个用于节点,一个用于属性;将属性类型:值对拖到产品类别的不同级别。

然后我将使用这个对象树来搜索具有特定属性对的产品……并相应地显示;因为他们将继承所有属性?

我可以通过实例化每个级别的子类在 Javascript 中轻松表示吗?

类似的模型可以用于分层属性(类型:值)吗?例如制造商 -> 范围 -> 系列


Node = function (txt) { this.level = txt; this.child = []; }

var node = new Array();

node[0] = new Node ("root");
// Add first level
node[1] = new Node ("Paper");
node[0].child.push(node[0]);
// Add second level
node[2] = new Node ("Cut Paper");
node[1].child.push(node[2]);
// Add third level
node[3] = new Node ("A4 Paper");
node[2].child.push(node[3]);
// Add fourth level
node[4] = new Node ("ABC12345");
node[3].child.push(node[4]);

node[3]["Length"]="297mm";
node[3]["Width"]="210mm";
node[4]["Weight"]="80gsm";

最佳答案

大概是这样的?

    function Node ( text ) {
this.level = text;
this.child = {};
this.parent = false;
}
Node.prototype = {
addChild : function ( text ) {
this.child[text] = new Node ( text );
this.child[text].parent = this;
return this;
}
}
var root = new Node ("root")
.addChild("Paper"),
paper = root.child["Paper"]
.addChild("Cut Paper"),
cut_paper = paper.child["Cut Paper"]
.addChild("A4 Paper"),
a4_paper = cut_paper.child["A4 Paper"]
.addChild("ABC12345");
abc12345 = a4_paper.child["ABC12345"];
a4_paper.Length = "297mm";
a4_paper.Width = "210mm";
abc12345.Weight = "80gsm";
console.log( root, paper, cut_paper, a4_paper, abc12345);

关于javascript - 如何在具有多个继承属性的 Javascript 中表示分层产品目录 [分类法]?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9580703/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com