javascript - 使用 JAVASCRIPT 生成增量 ID
问题描述
我想创建一个函数,它接受一个输入并在每次调用它时返回一个递增的 Id。
就像是:
function createId(input){
let initialValue = 1
let newId = `ID-${initialValue++}`
return newId
所以在这个函数中,我会将输入作为“xyz”、“abc”等传递,基于它应该返回一个 Id。
喜欢: 如果我传递'xyz',那么它应该返回newId作为Id-1,然后是Id-2,然后是Id-3,每次用xyz调用函数时,同样,每次用'abc'调用函数时它应该返回newId作为Id-1,Id-2,Id-3。
我无法根据给定的输入创建 ID。谢谢
解决方案
创建一个对象,该对象计算到目前为止使用特定字符串调用函数的次数:
const inputCounts = {};
function createId(input){
inputCounts[input] = (inputCounts[input] || 0) + 1;
return `ID-${inputCounts[input]}`;
}
console.log(createId('foo'));
console.log(createId('foo'));
console.log(createId('foo'));
console.log(createId('bar'));
推荐阅读
- python - Python中的文件类型
- ssis - SSIS VS17 Unsupported:此版本的 Visual Studio 无法打开以下项目 .dtproj
- java - Spring Boot Hibernate 高效的事务管理
- laravel - laravel中条件的嵌套关系
- assembly - 引用类型的对象数组如何存储在内存中?
- python - 身份验证方法已停止工作
- javascript - 第一次运行后停止此动画
- c++ - 为什么确定友元声明是否是其命名空间中的第一个如此重要?
- c# - XMLDocument 类 - 子节点 - 缩写加载与完全加载
- wordpress - 使用 Wordpress $wpdb 获取按 2 列排序的行结果