数组的解构赋值: 位置
对象的解构赋值: 名称

// {}在解构赋值的时候,不能出现在一行的最前面,否则js解析器会把他当成一个代码块,加()
({a, b} = obj),告诉他这个仅仅是一个解构语句

let {a, b} = {a: 1, b: 2};
 let{a:A, b} = {a: 1, b: 2};
 let{a:A=1, b=2} = {a: 10}; //A=10, b=2;

let a = 0;
({a, b} = {a: 1, b: 2}); //通过对象的解构赋值改变变量的值

let {a[y]} = {a: ['Yo.']}; //获取'Yo.', 错误
let{a: [y]} = {a: ['Yo.']}; //获取'Yo.', 正确 把a重命名为[Y],再解构['Yo.']
-----------------------------------------------------------------------------------
let {a{b}} = {a: {b: 1}}; //获取b的值,错误
let {a: {b}} = {a: {b: 1}}; //获取b的值,正确

// 解构赋值中,初始变量中不能出现a[]、a{},重命名(a: {b})的可以出现

let {floor, pow} = Math; //解构Math对象中的方法
let a = 1.9;
console.log(floor(a)); // 1
console.log(pow(2, 3)); // 8

// undefined 未声明(没值)
// not defined 未定义(没变量)

// Proxy 代理,用于在语言层面上去操作一个对象 Proxy({原对象},{配置项})

// let s = new Set([1, 2, 3, 3]);
// Set 和 Array 都是数据结构

var a = [, , , ];
function each(arr,callback){
for(var i = ; i < arr.length; i++){
var item = arr[i];
callback(item);
}
} each(a, function (item) {
if (item < ) {
console.log(item);
}
}); //你接受一个传参,叫callback,然后执行这个callback,同时执行的时候把item传进来

回调函数:叫我一下

yo.call(lsd); 用lsd来做yo()里边的this

this用于在不同的环境下,给不同的父级赋能的

this等于什么不取决于this所在的位置,取决于this所在的function是如何被调用的
function 作为方法被调用(对象.fullname()),this等于他的 父级对象
function 作为构造器被调用 ( new User()),this等于 即将生成的对象
其他情况this等于undefined,指向最外层

显性属性是拷的,隐性属性是指向的

变化的显性 不变的隐性

b的原型继承于A,A的原型继承于Object

对象的原型 指向 其构造器的原型

js4的更多相关文章

  1. Ext JS4 学习笔记之发送表单(Form)时也将表单下的表格(Grid)数据一同发送的方法

    Ext JS4 学习笔记之发送表单(Form)时也将表单下的表格(Grid)数据一同发送的方法 昨天在开发的时候遇到个小问题,就是如何将Grid的内容与Form一起发送到服务器端.默认情况下,表单(F ...

  2. Ext JS4百强应用: 用grid.plugin.CellEditing做高级查询 --第10强

    Ext JS4,用grid.plugin.CellEditing做高级查询: 写了90%,界面出来了,小兴奋就贴出来,还有细节要调整,基本能用. 代码: Ext.define('chenghao.ad ...

  3. ArcGIS API for JS4.7加载FeatureLayer,点击弹出信息并高亮显示

    我加载的是ArcGIS Server本地发布的FeatureService,ArcGIS API for JS4.7记载FeatureLayer时,在二维需要通过代码启用WebGL渲染,在三维模式下, ...

  4. 名词解释——Ext JS4

    Ext.onReady——Ext主入口,和onload事件不同,不需要页面所有东西加在出来. Ext js 的基本语法就是使用树状图来配置对象来定义界面: { config_options1:valu ...

  5. [JS4] 最简单JS框架

    <html> <head> <title></title> <SCRIPT TYPE="text/JavaScript"> ...

  6. zepto源码研究 - zepto.js-4(常用的工具)

    $.each: /** * 以集合每一个元素作为上下文,来执行回调函数 * @param elements * @param callback * @returns {*} */ $.each = f ...

  7. Ext JS4百强应用:设置textfield的悬浮提示信息 --第8强

    在Extjs4中有时候我们需要textfield的提示信息,但是我们发现textfield并没有这样的配置项. 这时候我们就要另想方法:我们需要在鼠标悬停在textfield组件的时候进行信息的提示, ...

  8. Ext JS4百强应用: 做可编辑的,可checked的treegrid--第11强

    做一个可编辑的,可checked的treegrid,代码相当简洁: 请看代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN&quo ...

  9. js4:with,for in语句,windows,location对象的使用

    原文发布时间为:2008-11-08 -- 来源于本人的百度文章 [由搬家工具导入] <html> <head> <title>js</title> & ...

随机推荐

  1. Luogu 3793 由乃救爷爷

    \(\verb|Luogu 3793 由乃救爷爷|\) rmq,数据随机 \(n,\ m\leq 2\times10^7\) lxl ST表 分块,大小设为 \(x\) 预处理每个块两端到块内每个点的 ...

  2. Matconvnet安装

    本文主要介绍Linux下Matconvnet的安装注意事项. 最近帮老师校验一份超分的代码,用到了matconvnet深度学习工具包.代码里面使用的是Matconvnet-1.0-beta20版本, ...

  3. ORACLE存储过程中%TYPE和%ROWTYPE的区别

    ORACLE存储过程中%TYPE和%ROWTYPE的区别 在存储过程中%TYPE和%ROWTYPE常用来在PL/SQL中定义变量 因为 t_emp emp%rowtype ;这个语句的意思是 定义一个 ...

  4. BZOJ1063 NOI2008 道路设计 树形DP

    题目传送门: BZOJ 题意精简版:给出一棵树,在一种方案中可以将树的若干链上的所有边的边权改为$0$,但需要保证任意两条链之间没有交点.问最少的一种方案,使得从根节点到其他节点经过的边的边权和的最大 ...

  5. [Luogu4916]魔力环[Burnside引理、组合计数、容斥]

    题意 题目链接 分析 sπo yyb 代码 #include<bits/stdc++.h> using namespace std; typedef long long LL; #defi ...

  6. HBase篇(2)-数据模型与操作

    HBase其实就是一个数据库,无非就是存储和增删改查,那我们先从数据模型说起把 这里有一张表,是用关系型数据库的思维画出来的表,这样比较易于理解: 概念 Table(表格) 没啥说的,和关系型数据库一 ...

  7. 提取jedis源码的一致性hash代码作为通用工具类

    一致性Hash热点 一致性Hash算法是来解决热点问题,如果虚拟节点设置过小热点问题仍旧存在. 关于一致性Hash算法的原理我就不说了,网上有很多人提供自己编写的一致性Hash算法的代码示例,我在跑网 ...

  8. React 系列 - 写出优雅的路由

    前言 自前端框架风靡以来,路由一词在前端的热度与日俱增,他是几乎所有前端框架的核心功能点.不同于后端,前端的路由往往需要表达更多的业务功能,例如与菜单耦合.与标题耦合.与"面包屑" ...

  9. sort 快排解决百万级的排序

    问题:给n个整数,按从大到小的顺序,输出前m大的整数0<m,n<1000000,每个整数[-500000,500000]输入:5 33 -35 92 213 -644输出:213 92 3 ...

  10. 牛客练习赛35 C.函数的魔法

    链接 [https://ac.nowcoder.com/acm/contest/32] 题意 题目描述 一位客人来到了此花亭,给了女服务员柚一个数学问题:我们有两个函数,F(X)函数可以让X变成(XX ...