零个或者多个排在一起的字符用单引号或者双引号括起来的。单引号简单点,方便。
'sdkfas"dsj' //"sdkfas"dsj"
'hssh'nd' //报错了
"It's a long journey."
转义字符
在JS中某些符号有特殊功能,好像html中的标签一样,如果想表现出这些符号,就转义成纯文本一样,在前面加反斜杠就可以的。
'did you say \"hello\"'
//"did you say "hello""
'niui\'nsunu'
//"niui'nsunu"
长度
var str = 'abcd'
str.length
4
str ='a\bcd'
"a�cd"
str.length
4
str = 'a\'bc'
"a'bc"
str.length
4
'\ddd'
"ddd"
'\\ddd'
"\ddd"
'\\\\dddd'
"\\dddd" //一个斜杠转义一个字符
换行
字符串的可读性,换行。每一行的最后都是转义符号,可写多行。
var = 'he
llo' //报错了,怎么换行呢?里面有换行符,把它转义
var str = 'hel\
\
lo'
//undefined
str
//"hello"
var str = "long\
long\
long\
string" //反斜杠后面必须是换行符,不能是其他,比如空格,就报错
str
//"longlonglongstring"
还有加号的运算也可以的:
var str = 'long'
+'long'
+'long'
+'string'
ES6新增的写法,ESC下面的那个点的用法:
`
hello
aaaa
`
//"
hello
aaaa
"
var str=`
long
long
string
`
undefined
str
//"
long
long
string
"
常用的方法
var str ='hello'
undefined
str.charAt(0)
"h"
str.charCodeAt(0)
104 //字符对应的arsic码
str.length
5
str[0]
"h"
str[str.length-1]
"o"
var str2='world'
var str3 =str+str2
str3
"helloworld"
字符串的截取查找:
var str ='hello'
undefined
var sub1=str.substr(1,3) //开始位置,作用长度
undefined
sub1
"ell"
var sub2=str.substring(1,3) //开始位置,结束位置
undefined
sub2
"el"
var sub3=str.slice(1,3) //同上
undefined
sub3
"el"
str.indexOf('el') //之前有用到过的
1
var str='hello my world'
undefined
var s1=str.search('my')
undefined
s1
6 //找不到为-1
var s2 =str.replace('my','your')
undefined
s2
"hello your world"
var s3 =str.match('my')
undefined
s3 //返回匹配的数组
["my", index: 6, input: "hello my world"]
大小写
var str ='hello'
undefined
str.toUpperCase
function toUpperCase() { [native code] }
str.toUpperCase()
"HELLO"
str.toLowerCase()
"hello"
str
"hello"
str.toUpperCase()
"HELLO"
str
"hello" //本身不变的
拼接
var color="red" //当成赋值变量了
undefined
str ='衣服的颜色是'+color
"衣服的颜色是red"
str2='衣服的颜色是${color}'
"衣服的颜色是${color}" //ES6的写法
str2=`衣服的颜色是${color}`
"衣服的颜色是red"