ChatGPT能根据用户的需要,写出高质量的代码,是码农的好帮手。善用ChatGPT,提出更准确、详细的问题,可以事半功倍。
下面以js为列,解决编程问题
问:写js代码,定义一个函数,输入一个数组,输出去重后的数组
答:
function removeDuplicates(arr) {
let newArr = [];
for(let i = 0; i < arr.length; i++) {
if(newArr.indexOf(arr[i]) === -1) {
newArr.push(arr[i]);
}
}
return newArr;
}
给它上点难度
问:写js代码,定义一个函数,输入一个数组,输出去重后的数组,需要比较数组中的对象,属性完成相同的对象也视为重复项
答:
function removeDuplicates(arr) {
let newArr = [];
let obj = {};
for(let i = 0; i < arr.length; i++) {
let item = arr[i];
let key = JSON.stringify(item);
if (!obj[key]) {
newArr.push(item);
obj[key] = true;
}
}
return newArr;
}
它利用了JSON.stringify方法将对象转换成字符串,作为判断对象是否重复的唯一标识符, 确实有点东西。