ES6 - 基础学习(4): 模板字符串和字符串新增方法
模板字符串
模板字符串:我理解为将字符串格式化、模板化,将字符串加强处理,此处的模板有动词的意思。
字符串模板基本格式: `xxxxxx`(前后都用反引号【tab键上面按键】引起来)。除了作为普通字符串 外;还可以用来定义多行字符串;也可以在字符串中插入变量和表达式,进行字符串内容扩充和计算。
1、普通字符串:
let testStr = `ES6 TestDemo`;
console.log(testStr); // ES6 TestDemo
2、普通字符串 添加标签、换行符:
let testStr = `ES6 TestDemo <H1>index文件</H1> \n 换行显示`;
document.write(testStr);
console.log(testStr);
图1:页面显示内容 图2:控制台打印内容
3、多行字符串:
let testStr = `ES6 TestDemo,
index文件,<br/>换行显示`;
document.write(testStr);
console.log(testStr);
4、字符串内插入变量、表达式和方法:变量名、表达式和方法都写在 ${} 中,如 ${xxxxxx} 。
let parStr1 = "TestDemo"; // 变量
let parStr2 = '16:42';
let parNum = 20;
let testFun = function testFun() { // 方法
return '测试方法!';
};
// function testFun(){ // 方法
// return '测试方法!';
// }
let testStr = `ES6 ${parStr1},当前时间 ${parStr2},
今天是放假的第${parNum + 1}天,一共放假${(parNum + 1) * 24}小时了。现在执行下${testFun()}`; // ${parStr1}、${parStr2}是变量,${parNum + 1}、${(parNum + 1)*24}、${testFun()}是表达式 (注:两种声明方法都能正常执行)
document.write(testStr);
console.log(testStr);
模版字符串功能很强大,实际开发过程中,可以写一个活动页面或拼接页面,然后通过组件挂载 或ajax请求参数加载 然后显示给用户。
同时需要注意的是 模板字符串中的换行('\n',<br/>)、空格( ),以及HTML标签,浏览器渲染时都会正常渲染出来;但控制台打印时,代码是怎样的,打印出来也就是怎样的。
let testStr = `<b>ES6</b> ${parStr1},当前时间 ${parStr2},
今天是放假的第${parNum + 1}天,一共放假${(parNum + 1) * 24}小时了。
现在执行下${testFun()}`;
符串新增方法
字符串新增方法很多:
ES6 - 基础学习(4): 模板字符串和字符串新增方法的更多相关文章
- python 基础学习笔记(2)---字符串功能函数
**上一篇写到了,基本的数据类型,今天重点来讲一下字符串的功能函数**回顾一下上篇的内容:一.int 整型,在python 3 中与long型合并 可以达到 -9223372036854775808- ...
- ES6 - 基础学习(5): 数值扩展
二进制和八进制数值表示法 ES6提供了二进制和八进制数值的新写法,分别前缀 0b(或0B). 0o(或0O)然后跟上二进制.八进制值即可. 二进制(Binary)表示法新写法:前缀 0b 或 0B. ...
- ruby -- 基础学习(八)中文字符串截取的函数
学习来源:http://www.codesky.net/article/200910/166595.html truncate(text, length = 30, truncate_string = ...
- ES6 基础学习
ECMAScript 6 标准入门 一.let和const let命令 let命令,用来声明变量.它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效:是块级作用域,且let不允许 ...
- 【ES6 】ES6 字符串扩展及新增方法
模板字符串 传统写法 var str = 'There are <b>' + basket.count + '</b> ' + 'items in your basket, ' ...
- ES6 - 基础学习(3): 变量的解构赋值
解构赋值概述 1.解构赋值是对赋值运算符的扩展. 2.它是一种针对数组或者对象进行模式匹配,然后对其中的变量进行赋值. 3.代码书写上显得简洁且易读,语义更加清晰明了:而且还方便获取复杂对象中的数据字 ...
- ES6 - 基础学习(1): 开发环境搭建
现在Chrome浏览器已经很好的支持ES6了,但有些低版本的浏览器或其他浏览器还是不支持ES6的语法,因此实际项目开发或上线过程中就需要把ES6的语法转变成ES5的语法.项目开发过程中 Webpack ...
- es6+字符串string的新增方法函数
String.includes("xxx") 返回true/false [es5的字符串查找方法:String.indexOf() ] String.startsWit ...
- ES6 - 基础学习(8): Promise 对象
概述 Promise是异步编程的一种解决方案,比传统的解决方案(多层嵌套回调.回调函数和事件)更强大也更合理.从语法上说,Promise是一个对象,从它可以获取异步操作的消息,Promise 还提供了 ...
随机推荐
- 机器学习环境配置系列五之keras2
keras一个大坑就是配置文件的问题,网上会给很多的误导,让我走了很多弯路. 1.安装keras2 conda install keras 2.环境配置 echo ‘{ "epsilon&q ...
- 约束路由 用正则表达式约束路由 Constraining a Route Using a Regular Expression 精通ASP-NET-MVC-5-弗瑞曼
- flutter 与 android 混合开发
现有的混合开发方式,都是存flutter项目在android系统或者iOS上面跑. 但是,实际情况是,我们需要在一个成熟的native项目上面,跑几个flutter页面,逐步的进行flutter的融合 ...
- AOP编程实践总结
AOP编程实践总结 AOP概述 AOP(Aspect-Oriented Programming,面向方面编程)是OOP(Object-Oriented Programing,面向对象编程)的补充和完善 ...
- flask中使用SQLAlchemy操作mysql的一些注意事项和坑
一 ImportError: cannot import name 'db' 由于app最后才加载,所以其他文件,比如models.py不能从app.py导入任何变量, 要使用db可以先定义一个,之后 ...
- 强大的Guava中的新集合类型: Multiset, Multimap, BiMap, Table, ClassToInstanceMap, RangeSet, RangeMap等
一 Multiset /** * 新类型集合: Multiset: Multiset就是可以保存多个相同的对象,并且无序 * 占据了List和Set之间的一个灰色地带 * 其他实现: TreeMult ...
- Spring Cloud中Eureka注册显示UNKNOWN问题
这是由于application.yml里spring没有配置实例造成的
- 八、django学习之分组查询、F查询和Q查询
分组查询.F查询和Q查询 分组查询 统计每个出版社出版的书籍的平均价格 第一种方式 obj = models.Book.objects.values('publishs_id').annotate(a ...
- 我的一个react路由之旅(步骤及详图)
今天开始react一个重要部分的xiao~习,路由~(过程截图,最后附代码) 以下代码只能骗糊涂蛋子,没错,就是我自己,不要打算让我敲出多高级的东西~ 理论性知识几乎没有,请不要打算让我给你说原理啥的 ...
- Linux 下tomcat 的重新启动
在 Linux 系统下,重启 Tomcat 如何使用命令操作? 1.首先,进入 Tomcat 的 bin 目录 cd /usr/local/tomcat/bin 2.使用Tomcat关闭命令 ./sh ...