gpt4 book ai didi

javascript - 如何在 Javascript 中增加对象内的唯一值

转载 作者:行者123 更新时间:2023-12-01 08:40:06 32 4
gpt4 key购买 nike

这是我在 stackoverflow 上的第一个问题。

$("button").click(function(){
var text = "<ul>";
var item = $(".inputvalue").val();
var n = checkvalue(myArray, item);
if (!n)
{
myArray.push(item);
}
else
{
counter++;
}
for (var i = 0; i < myArray.length; i++)
{
var valuetostring = "class" + i.toString();
text += "<li class=" + valuetostring + ">" + myArray[i] + " x " + counter + "</li>";
}
$("#counter").text(counter);
document.getElementById("output").innerHTML = text;
});

https://jsfiddle.net/m3Low41j/2/

我需要这个解决方案,以便在输入新值时向数组添加唯一值。如果输入相同的值,则该值后面的数字应增加 1。

像这样:

  • 沙发×1
  • 枕头 x 4
  • 椅子 x 1
  • table x 3

我该怎么做?

如果我的代码有点业余,我很抱歉,我已经为此努力了两个晚上,但仍然无法弄清楚。

你能帮我一下吗?谢谢。

最佳答案

您可以尝试使用如下所示的对象,然后访问该对象进行显示,而不是使用数组。请记住,这是一个精简版本,您需要验证输入以确保其格式适合作为对象键。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects

var inputObj = {}; 

var entries = function(input){
if(inputObj[input]== undefined){
inputObj[input] = 1;

}
else{
inputObj[input] += 1;
}

}

entries("hello");
entries("bye");
entries("hello");

//Object.keys, gives you an array of all keys in onject
console.log(Object.keys(inputObj))

//Display key property pairs for entire object
Object.keys(inputObj).forEach(function(key) {
console.log(key, inputObj[key]);
});

//Access indivdual property
console.log("Hello Property = ", inputObj.hello)

关于javascript - 如何在 Javascript 中增加对象内的唯一值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48350111/

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