基本包装类型
即把简单数据包装成了复杂数据类型。
三个特殊引用类型:String、Number、Boolean。
字符串的不可变
看上去可以改变内容,其实改变的是地址。
(所以不要大量的拼接字符串,会占用大量内存,出现效率问题。)
字符串的各种操作不会改变本身,而是返回新的字符串。
字符串索引
string.indexOf(需要查找的字符);
根据索引返回字符
字符串操作
// 找出字符串中出现最多的字符,及其出现次数。 var song = 'Nevermind, I"ll find someone like you.'; // 方法一:自己写的思路 var charMost = ''; var times = 0; // debugger; for (var i = 0; i < song.length; i++) { var searchChar = song.charAt(i); var searchIndex = song.indexOf(searchChar); var searchTimes = 0; while (searchIndex !== -1) { searchTimes++; searchIndex = song.indexOf(searchChar, searchIndex + 1); } if (searchTimes > times) { times = searchTimes; charMost = searchChar; } } console.log(charMost, times); // 方法二:使用对象 var counter = {}; for (var i = 0; i < song.length; i++) { var char = song.charAt(i); // 思考:以下用对象名.属性名可以吗? if (counter[char]) { counter[char]++; } else { counter[char] = 1; } console.log(counter); } var max = 0; var maxChar = ''; // 遍历对象 for (var k in counter) { if (counter[k] > max) { maxChar = k; max = counter[k]; } } console.log(maxChar, max);