let str = '中华上下五千年!';
for(let i of str){//这个是字符串的遍历 比 单纯的for要好
//console.log(i);//中华上下五千年!
}
//at 需要垫片库才能实现 但是我install了string.prototype.at但是,没有用,还是报错,有成功和我说一声哈
console.log(str.at(1));
//charAt
console.log(str.charAt(2));//上
//一个字符串是否包含在另一个字符串中
//includes() startsWith() endsWith()
//这三个都是返回布尔值,includes()是表示是否找到了字符串,startsWith()表示头部是否是该字符串,endsWith()表示尾部是否是该字符串
console.log(str.includes('中华'));//true
console.log(str.startsWith('上下'));//false
console.log(str.startsWith('中华'));//true
console.log(str.startsWith('中'));//true 从头部开始查找,是否是该字符串
console.log(str.startsWith('上下',2))//true 第二个参数是指从下标几开始查找
console.log(str.endsWith('五'))//false
console.log(str.endsWith('五千年!'));//true
console.log(str.endsWith('!'));//true 从尾部开始往前找,是否是该字符串
console.log(str.endsWith('上下',4));//true 针对前几个字符是否是该字符串,前四个字符里,是否有“上下”
//重复。repeat()
let name = 'a';
let newname = name.repeat(2);
console.log(name);//a
console.log(newname);//aa 将字符串重复几次 返回新的字符串,原字符串不变 小数会被取整,不是四舍五入哈
//头部尾部补全。 padStart() padEnd()
let str1 = 'd';
let str2 = 'ff';
console.log(str1.padStart(2,'0'));//0d padStart()两个参数,第一个为该字符串的最小长度,第二个是补全字符串用的字符串是什么
console.log(str1);//d 说明补全字符串之后,返回的是一个新的字符串,原来的字符串没有被改变
console.log(str2.padStart(1,'0'));//ff
console.log(str2.padStart(2,'0'));//ff 说明了原字符串的长度等于或者大于补全字符串的最小长度,就返回原字符串
console.log(str2.padStart(10,'0123456789'));//01234567ff 说明了如果用于补全字符串的字符串长度大于原字符串+补全字符串的最小长度,就会被截取
console.log(str2.padEnd(10,'0123456789'));//ff01234567
console.log(str2.padStart(6));// ff 第二个参数不存在的时候,会用空格来补全
//padStart() 主要有两个用途:1、补全数字指定位数 2、提示字符串格式
let str3 = '10';
console.log(str3.padEnd(5,'.00'));//10.00
console.log(str3.padStart(4,'0'));//0010
let str4 = '12';
console.log(str4.padStart(10,'YYYY-MM-DD'));//YYYY-MM-12
console.log(str4.padStart(8,'HH:MM:SS'));//HH:MM:12
//模版字符串 ` ` 反引号
console.log(`五十六个民族,五十六枝花`);
console.log(
`五十六个
兄弟民族是一家`);//控制台输出是保留格式的,很不错哟,让我想起了一个标签 <pre>,他俩有异曲同工之妙
let age = 10;
console.log(`俺弟弟今年${ age }岁了哟!`);//这里的变量 age 就是这样加入的
console.log(`俺弟弟是${ age > 9 ? '大人' : '小孩'}哟!`);//这里也可以写三目运算 也可以写Javascript表达式、对象属性引用、函数执行引用
//在模版字符串中想要使用反引号,需要转译 使用 / /`
//模版字符串里如果是标签,会自动转成html的
import $ from '../common/newjquery.js';
$('#list').html(`<p>dedede</p>`)
//模版字符串还可以嵌套使用
let arr = [1,2,3];
$('#list').html(`<div>
<p>第一个p标签</p>
${arr.map((item)=>{
return `<p>第${item}个p标签</p>`
}).join('')}
</div>`)
//如果后面没有用join的话,出来的页面会有逗号,用了之后,join会把字符串按空串联起来,join的作用就是将数组里每个元素变成字符串,并且用参数串联起来
/**
上面就是模版字符串的嵌套使用,
下面是模版字符串的另一种使用:标签模版
*/
console.log`调用里console这个函数哟!` //这里就调用了console.log这个函数
let arr1 = ['value1','value2','value3']
function fun(v1,...v2){
console.log(arguments)//三个参数,第一个参数是没有被替换的字符串组成的数组,['第一个','第二个',''],第二个参数是value1,第三个参数是value2,这里需要注意的是,变量的替换是在两个字符串之间,例如第一个和第二个之间,第二个和第三个之间
console.log(v1,'1111111');//['第一个','第二个','']
console.log(v2,'2222222');//['value1','value2']
}
fun`第一个${arr1[0]}第二个${arr1[1]}`
es6字符串扩展
最新推荐文章于 2025-01-03 16:19:06 发布