${}占位符用法


${}占位符需要和模板字符串配合使用。

ES2015新增此语法结构。

 

浏览器支持:

(1).IE9+浏览器支持占位符。

(2).edge浏览器支持占位符。

(3).火狐浏览器支持占位符。

(4).谷歌浏览器支持占位符。

(5).opera浏览器支持占位符。

(6).safria浏览器支持占位符。

上面已经对占位符做了简单的介绍,但是还需要明晰如下两个问题:

一.什么是占位符:

首先解决第一个问题,大家知道站位是什么意思,比如让同学在自习室占个座位。

占位符的功能大致也是如此,${}占位符也是为某一个数据结构占据位置。

 

二.占位符必要性:

在ES2015之前,如果在字符串中插入一个JavaScript表达式,需要使用如下形式:

 
1
2
let address= "北京" ;
let str= "船长位于" +address+ ",哈哈哈"

上面代码将变量address插入到字符串中,需要使用+进行字符串连接。

如果插入的数量较多,或者说较为复杂的操作,那么上面的方式将十分繁琐,不人性化。

再来看一下利用占位符对上面功能的实现,代码实例如下:

1
2
3
let address= "北京" ;
let str=`船长位于${address},哈哈哈`;
console.log(str);

代码运行效果截图如下:

船长位于北京,哈哈哈

 

上面代码很自然的利用占位符将变量插入到字符串中。

特别说明:这里的字符串不是普通字符串,而是模板字符串。

 
1
2
3
4
5
let func=(url)=>{
   return url;
}
let str = `本站的url地址是${func( "https://www.cnblogs.com/watermelons" )}`;
console.log(str);

代码运行效果截图如下:

本站的url地址是https://www.cnblogs.com/watermelons

 

占位符中的表达式是对函数的调用,函数返回一个字符串。

 
1
2
3
let arr = [ "是" , "船" , "长" , "啊" ];
let str = `${arr}`;
console.log(str);

代码运行效果截图如下:

是,船,长,啊

 

输出值是"是,船,长,啊",可能会有朋友对这个结果有疑问。

占位符中是数组,但是这个数组所处的上下文环境是字符串。

那么就隐身调用toString方法将其转换为字符串。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM