// slice和substring接收的是起始位置和结束位置(不包括结束位置),而substr接收的则是起始位置和所要返回的字符串长度
// charAt() 方法可返回指定位置的字符。第一个字符位置为 0, 第二个字符位置为 1,以此类推.
let str = 'i have a dream'
let upperStr = str.substring(0,1).toUpperCase() + str.substring(1)
let sliceStr = str.slice(0,1).toUpperCase() + str.slice(1)
let charStr = str.charAt(0).toUpperCase() + str.slice(1)
console.log('upperStr', upperStr, 'sliceStr', sliceStr, 'charStr', charStr) // I have a dream