請求:
配列['c', 'a', 'z', 'a', 'x', 'a', 'x', 'c', 'b','y','g']
内の重複する要素を削除します。
実現のアイデア:
- 古い配列で繰り返されない要素を選択して新しい配列に配置し、繰り返される要素を1つだけ保持します。
- 古い配列をトラバースし、古い配列要素を使用して新しい配列を照会します。要素が新しい配列に表示されない場合は新しい配列に追加され、そうでない場合は追加されません。
- 使用して、
新数组.indexOf(数组元素)
返された場合は-1、それは新しい配列におけるそのような要素が存在しないことを意味します。
コード:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
function unique(arr) {
var newArr = [];
for (var i = 0; i < arr.length; i++) {
if (newArr.indexOf(arr[i]) === -1) {
newArr.push(arr[i]);
}
}
return newArr;
}
var demo = unique(['c', 'a', 'z', 'a', 'x', 'a', 'x', 'c', 'b', 'y', 'g']);
console.log(demo);
</script>
</body>
</html>