变量的解构赋值

// 数组的解构赋值
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#

    Application (4)URL地址中的参数 (5)通过隐藏字段来传递数据 (6)Server.Transfer (7)通过序列化对象 (8)........ 下面就分别一一介绍: (1)使用Se ...

  2. html5移动开发。

    禁止滚动 $('#idl').bind("touchmove",function(e){ e.preventDefault(); }); 图片居中 (因为图片比较特别,所以需要在外 ...

  3. Microsoft DirectX SDK 2010 版本下载

    Microsoft DirectX SDK 2010 版本下载 Version:Date Published:9.29.19626/7/2010File name:File size:DXSDK_Ju ...

  4. 2018.09.30 bzoj4025: 二分图(线段树分治+并查集)

    传送门 线段树分治好题. 这道题实际上有很多不同的做法: cdq分治. lct. - 而我学习了dzyo的线段树分治+并查集写法. 所谓线段树分治就是先把操作分成lognlognlogn个连续不相交的 ...

  5. AVL树C++实现

    1. AVL 树本质上还是一棵二叉搜索树,它的特点是: 本身首先是一棵二叉搜索树. 带有平衡条件: 每个结点的左右子树的高度之差的绝对值(平衡因子) 最多为 1. 2. 数据结构定义 AVL树节点类: ...

  6. linxu ssh 双端认证 不成功之authorized_keys

    linxu ssh 双端认证 不成功之authorized_keys liunx双端认证可以让我们更简便的在两台服务器之间传输文件,配置暂且不说,网上有大部分的文章可以搜索到,今天我要说的是在不成功的 ...

  7. The serializable class XXX does not declare a static final serialVersionUID field of type long

    问题: 在Eclipse中,继承类时,总是提示下面的警告(Warning),按理说警告是没有关系的,但是程序看起来老不爽了,这是强迫症的关系(呵呵) The serializable class XX ...

  8. oss上传文件夹-cloud2-泽优软件

    泽优软件云存储上传控件(cloud2)支持上传整个文件夹,并在云空间中保留文件夹的层级结构,同时在数据库中也写入层级结构信息.文件与文件夹层级结构关系通过id,pid字段关联. 本地文件夹结构 文件 ...

  9. Android 3D游戏开发

    OpenGL ES(OpenGL Embedded System) Android 3D游戏开发技术宝典:OpenGL ES 2.0(android 3d游戏开发技术宝典 -opengl es 2.0 ...

  10. CDialog

    对话框和对话框类CDialog 对话框经常被使用,因为对话框可以从模板创建,而对话框模板是可以使用资源编辑器方便地进行编辑的. 模式和无模式对话框 对话框分两种类型,模式对话框和无模式对话框. 模式对 ...