/**
* 解构赋值
*/
'use strict';
// 遍历字符串
for(let p of 'foo'){
console.log(p);
}
// 查找字符串方法
let s = 'Hello world!';
// startsWith : 判断查找字符是否在开头 true | false
let start = s.startsWith('Hello');
// endsWith : 判断查找字符是否在结尾 true | false
let end = s.endsWith('!');
// includes : 判断是否包含查找字符 true | false
let include = s.includes('o');
// repeat : 重复字符串
let str = 'x'.repeat(2.9);
// 模板字符串 使用反引号 ``
// 插入变量 ${变量}
let str = `我是变量`
document.body.innerHTML = (`
<p>${str}</p>
<h1>biao ti</h1>
`)
// 模板字符串 使用反引号 ``
// 插入变量 ${变量}
// 大括号里可以是任意的表达式 || 对象的属性
let a = 1
let b = 2
let obj = {name: '小花'}
$('body').html(`
<p>${a + b}</p>
<p>${obj.name}</p>
`)
// 模板字符串 使用反引号 ``
// 模板字符串中可以使用函数
function fn(){
return '函数返回值'
}
document.body.innerHTML = `<div>${fn()}</div>`
function fn(str){
c(str)
}
// 标签模板 : 模板字符串紧跟在一个函数名后面 该函数将被调用来处理这个模板字符串
fn`123`
// 等价于
fn(123)
/**
* 模板字符串里有变量 就不是简单的调用了 而是会讲模板字符串先处理成多个参数 再调用函数
* tag函数所有参数的实际值如下
第一个参数:['Hello ', ' world ', '']
第二个参数: 15
第三个参数:50
*/
let a = 5
let b = 10
function tag(s, v1, v2){
c(s, v1, v2)
}
tag`Hello ${a + b} world ${a * b}`