在學習javascript的過程中,練習是非常重要的一環(huán)。通過許多實戰(zhàn)的練習題,我們可以更深入地理解javascript的語法和應用,也可以提高我們的編程能力。在這篇文章中,我將分享一些javascript代碼練習題,希望能夠幫助大家在學習javascript時更好地練習。
1. 判斷字符串中是否有重復字符
這是一道非常經(jīng)典的javascript練習題,需要判斷一個字符串中是否有重復的字符。實現(xiàn)的思路是利用對象的鍵值對來存儲每個字符出現(xiàn)的次數(shù),如果某個字符的次數(shù)大于1,則說明該字符串有重復字符。
2. 統(tǒng)計數(shù)組中每個元素出現(xiàn)的次數(shù)
這道練習題需要統(tǒng)計一個數(shù)組中每個元素出現(xiàn)的次數(shù),并將統(tǒng)計結果存儲在一個對象中。實現(xiàn)的思路是利用對象的鍵值對來存儲每個元素出現(xiàn)的次數(shù)。
3. 實現(xiàn)數(shù)組去重
這是一道經(jīng)典的javascript練習題,需要實現(xiàn)數(shù)組去重。實現(xiàn)的思路是利用對象的鍵值對來存儲每個元素,如果該元素已經(jīng)在對象中出現(xiàn)過,則說明該元素是重復的,需要將其過濾掉。
4. 實現(xiàn)數(shù)組排序
這道練習題需要實現(xiàn)數(shù)組排序,可以使用冒泡排序、插入排序、選擇排序、快速排序等算法實現(xiàn)。下面是一個簡單的冒泡排序?qū)崿F(xiàn):
5. 實現(xiàn)字符串反轉(zhuǎn)
這道練習題需要實現(xiàn)字符串反轉(zhuǎn),可以使用循環(huán)、遞歸等方式實現(xiàn)。下面是一個簡單的遞歸實現(xiàn):
以上是一些javascript代碼練習題的實現(xiàn),通過這些練習題的實現(xiàn),我們可以更好地理解javascript的語法和應用,也可以提高我們的編程能力。當然,實際上還有很多其他好玩的javascript練習題等待我們?nèi)ヌ剿骱吞魬?zhàn)。
1. 判斷字符串中是否有重復字符
這是一道非常經(jīng)典的javascript練習題,需要判斷一個字符串中是否有重復的字符。實現(xiàn)的思路是利用對象的鍵值對來存儲每個字符出現(xiàn)的次數(shù),如果某個字符的次數(shù)大于1,則說明該字符串有重復字符。
javascript function hasDuplicate(str) { let obj = {}; for(let i = 0; i < str.length; i++) { let char = str[i]; if(obj[char]) { obj[char] += 1; } else { obj[char] = 1; } if(obj[char] > 1) return true; } return false; } console.log(hasDuplicate("hello")); // true console.log(hasDuplicate("world")); // false
2. 統(tǒng)計數(shù)組中每個元素出現(xiàn)的次數(shù)
這道練習題需要統(tǒng)計一個數(shù)組中每個元素出現(xiàn)的次數(shù),并將統(tǒng)計結果存儲在一個對象中。實現(xiàn)的思路是利用對象的鍵值對來存儲每個元素出現(xiàn)的次數(shù)。
javascript function countElements(arr) { let obj = {}; for(let i = 0; i < arr.length; i++) { let element = arr[i]; if(obj[element]) { obj[element] += 1; } else { obj[element] = 1; } } return obj; } console.log(countElements([1,2,3,2,3,4,5,6,4])); // {1: 1, 2: 2, 3: 2, 4: 2, 5: 1, 6: 1}
3. 實現(xiàn)數(shù)組去重
這是一道經(jīng)典的javascript練習題,需要實現(xiàn)數(shù)組去重。實現(xiàn)的思路是利用對象的鍵值對來存儲每個元素,如果該元素已經(jīng)在對象中出現(xiàn)過,則說明該元素是重復的,需要將其過濾掉。
javascript function uniqueArray(arr) { let obj = {}; let result = []; for(let i = 0; i < arr.length; i++) { let element = arr[i]; if(!obj[element]) { obj[element] = true; result.push(element); } } return result; } console.log(uniqueArray([1,2,3,2,3,4,5,6,4])); // [1, 2, 3, 4, 5, 6]
4. 實現(xiàn)數(shù)組排序
這道練習題需要實現(xiàn)數(shù)組排序,可以使用冒泡排序、插入排序、選擇排序、快速排序等算法實現(xiàn)。下面是一個簡單的冒泡排序?qū)崿F(xiàn):
javascript function bubbleSort(arr) { let len = arr.length - 1; for(let i = 0; i < len; i++) { for(let j = 0; j < len - i; j++) { if(arr[j] > arr[j+1]) { [arr[j], arr[j+1]] = [arr[j+1], arr[j]]; } } } return arr; } console.log(bubbleSort([3, 1, 4, 2, 5])); // [1, 2, 3, 4, 5]
5. 實現(xiàn)字符串反轉(zhuǎn)
這道練習題需要實現(xiàn)字符串反轉(zhuǎn),可以使用循環(huán)、遞歸等方式實現(xiàn)。下面是一個簡單的遞歸實現(xiàn):
javascript function reverseStr(str) { if(str.length === 1) return str; return reverseStr(str.substring(1)) + str[0]; } console.log(reverseStr("hello")); // "olleh"
以上是一些javascript代碼練習題的實現(xiàn),通過這些練習題的實現(xiàn),我們可以更好地理解javascript的語法和應用,也可以提高我們的編程能力。當然,實際上還有很多其他好玩的javascript練習題等待我們?nèi)ヌ剿骱吞魬?zhàn)。
上一篇php 中有html
下一篇php 中文驗證