变量的解构赋值

// 数组的解构赋值
let [a,b,c] = [1,2,3]; //1,2,3
let [a,b,c] = [,123,]; //undefined 123 undefined
let [a=111,b,c] = [,123,]; //111 123 undefined
console.log(a,b,c);

对象的解构赋值  

let {foo,bar} = {foo : 'hello',bar : 'hi'};//hello hi
let {foo,bar} = {bar : 'hi',foo : 'hello'};//hello hi
console.log(foo,bar);
===================== let {cos,sin,random} = Math; console.log(typeof cos);//function
console.log(typeof sin);//function
console.log(typeof random);//function

  

  

对象属性别名(如果有了别名,那么原来的名字就无效了)

let {foo,bar} = {bar : 'hi',foo : 'nihao'};
console.log(foo,bar) //nihao hi
================================================================
let {foo:abc,bar} = {bar : 'hi',foo : 'nihao'};
console.log(abc,bar)//nihao hi
console.log(foo,bar); // foo is not defined

  

对象的解构赋值指定默认值  

let {foo:abc='hello',bar} = {bar : 'hi'};
console.log(abc,bar);//hello hi

字符串的解构赋值  

let [a,b,c,d,e,length] = "hello";
console.log(a,b,c,d,e);//h e l l o
console.log(length);// undefined let {length} = "hi";
console.log(length);//2

  

/*
字符串相关扩展
includes() 判断字符串中是否包含指定的字串(有的话返回true,否则返回false)
参数一:匹配的字串;参数二:从第几个开始匹配
startsWith() 判断字符串是否以特定的字串开始
endsWith() 判断字符串是否以特定的字串结束 模板字符串
*/
console.log('hello world'.includes('world',7));//false
console.log('hello world'.includes('world',6));//true  let url = 'admin/login.html';
console.log(url.startsWith('admin'));//true
console.log(url.endsWith('html'));//true 反引号表示模板,模板中的内容可以有格式,通过${}方式填充数据
  let obj = {
    username : 'lisi',
    age : '12',
    gender : 'male'
  }   let fn = function(info){
    return info;
  }
  let tpl = `
  <div>
    <span>${obj.username}</span>
    <span>${obj.age}</span>
    <span>${obj.gender}</span>
    <span>${1+1}</span>
    <span>${fn('nihao')}</span>
  </div>
  `;
  console.log(tpl);     <div>
      <span>lisi</span>
      <span>12</span>
      <span>male</span>
      <span>2</span>
      <span>nihao</span>
    </div>

  

  

  

  

  

ES6字符串相关扩展的更多相关文章

  1. es6 字符串的扩展和数值的扩展

    es6字符串的扩展 1. es6新增的一些方法 1.1 includes 判断是否包括在内,返回一个 true or false 1.2 statsWith 判断是否以什么开头,返回一个 true o ...

  2. es6字符串的扩展

    字符串的扩展 Unicode表示法:大括号包含表示Unicode字符(\u{0xXX}或\u{0XXX}) 字符串遍历:可通过for-of遍历字符串 字符串模板:可单行可多行可插入变量的增强版字符串 ...

  3. ES6 字符串的扩展

    字符的Unicode表示法 JavaScript允许采用\uXXXX形式表示一公分字符,其中XXXX表示字符的码点. "\u0061" //"a" 但是,这种表 ...

  4. es6字符串的扩展学习笔记

    1. 传统上,JavaScript只有indexOf方法,可以用来确定一个字符串是否包含在另一个字符串中.ES6又提供了三种新方法. includes():返回布尔值,表示是否找到了参数字符串. st ...

  5. es6字符串的扩展——模板

    todo1.模板字符串 传统的 JavaScript 语言,输出模板通常是这样写的(下面使用了 jQuery 的方法). $('#result').append( 'There are <b&g ...

  6. ES6 - 字符串的扩展(模版字符串)

    模板字面量的最简单语法,是使用反引号( `)(Tab上面那个键)来包裹普通字符串,而不是用双引号或单引号. <!DOCTYPE html> <html lang="en&q ...

  7. ES6 字符串的扩展(待细读)

    1.确定字符串中是否含有某个字符串 indexof(value,num):可返回某个指定的字符串值在字符串中首次出现的位置.ES5方法,num范围(0~length-1) includes(value ...

  8. ES6模板字符串及字符串的扩展方法

    一.ES6模板字符串 传统定义字符串的方式是: const str='hello es2015,this is a string' ES6新增了一种定义字符串的方式用反引号进行标识 const str ...

  9. ES6关于Unicode的相关扩展

    前面的话 字符串是编程中重要的数据类型,只有熟练掌握字符串操作才能更高效地开发程序.JS中的字符串String类型是由引号括起来的一组由16位Unicode字符组成的字符序列.在过去,16位足以包含任 ...

随机推荐

  1. c#递归实现螺旋数组

    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threa ...

  2. stl学习记录(2)

    #include <iostream> #include <utility> #include <tuple> #include <complex> # ...

  3. 2018.07.22 洛谷P3106 GPS的决斗Dueling GPS's(最短路)

    传送门 图论模拟题. 这题直接写3个(可以压成一个)spfa" role="presentation" style="position: relative;&q ...

  4. hdu-1728(bfs+优化)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1728 注意:1.先输入起点(y1,x1)和终点(y2,x2): 2.如果一个一个遍历会超时. 思路:每 ...

  5. MySQL优化Timeout: Pool empty. Unable to fetch a connection in 30 seconds, none available

    //查看所有进程 show processlist; //查询是否锁表 show OPEN TABLES where In_use > 0; //查看被锁住的 SELECT * FROM INF ...

  6. (匹配 匈牙利)棋盘游戏 -- Hdu --1281

    链接: http://acm.hdu.edu.cn/showproblem.php?pid=1281 http://acm.hust.edu.cn/vjudge/contest/view.action ...

  7. Amazon成本和产出的衡量方式

    Amazon用一种T-Shirt Size 估计的方式来做项目. 产品经理会对每一条需求评估上业务影响力的尺寸,如:XXXL 影响一千万人以上或是可以占到上亿美金的市场,XXL,影响百万用户或是占了千 ...

  8. Java内存模型(二)

    volatile型变量的特殊规则 volatile是Java虚拟机提供的最轻量级的同步机制,当一个变量被定义成volatile后,它将具备两种特性,第一是保证此变量对所有线程的可见性,这里的“可见性” ...

  9. maven 学习:为什么要使用maven,maven使用过程中的一些参数

    Maven是一个基于Java平台的项目构建工具. 设计的出发点: 在进行软件开发的过程中,无论什么项目,采用何种技术,使用何种编程语言,我们要重复相同的开发步骤:编码,编译,测试,生成文档,打包发布. ...

  10. 抱SQL SERVER大腿之我爱用视图(对大数据量的管理)

    我们拥有一个巨大的表,两千多万条记录.也许在行家眼里,两千多万条记录顶多算条毛,不过这条毛也忒粗壮了一点:我们的数据库占用的空间已经达到5G多了.不要以为是日志文件在搞鬼,日志文件可以自动收缩的,最多 ...