
JavaScript - Vue
文章平均质量分 86
JavaScript知识和Vue知识
小晴洛
个人博客推荐https://ZhaoYLong.github.io,欢迎阅读!
展开
-
JavaScript高程第四五章重读之问题提炼
原始值的种类?Undefined、Null、Boolean、String、Number、Symbol、BigInt原始值与引用值的区别?JavaScript中的原始值与引用值js中按值访问与按引用访问的区别?保存原始值的变量是按值(by value)访问的,因为我们操作的就是存储在变量中的实际值。在操作对象时,实际上操作的是对该对象的引用(reference)而非实际的对象本身。参考描述js中复制值的操作?对于原始值:原始值会被复制到新的栈空间上,新.原创 2021-03-11 15:18:14 · 204 阅读 · 1 评论 -
JavaScript之ES6新增类
ES6引入的class关键字具有正式定义类的能力。类class是ES中新的基础语法糖结构。虽然ES6类表面上看起来可以支持正式的面向对象编程,但实际上它背后使用的仍然是原型和构造函数的概念。引入class关键字为了解决使用各种实现继承的代码非常冗长和混乱的问题。类定义定义类的主要方式:类声明 class Person {}类表达式 let Person = Class {}与函数表达式类似,类表达式在它们被求值之前不能引用。函数声明可以提升,但类定义不能提升。函数受函.原创 2021-03-11 15:17:00 · 263 阅读 · 0 评论 -
JavaScript之对象继承
面向对象语言支持2种继承:接口继承和实现继承。前者只继承方法签名,后者继承实际的方法。、接口继承在ES中是不可能实现的,因为函数没有签名。实现继承是ES唯一支持的继承方式,主要是通过原型链实现的。原型链ES把原型链定义为ES的主要继承方式。基本思想:通过原型继承多个引用类型的属性和方法。构造函数、原型和实例的关系:每个构造函数都有一个原型对象,原型有一个constructor属性指回构造函数,而实例有一个内部指针指向原型。若原型是另一个类型的实例,这就意味着这个原型本.原创 2021-03-10 16:01:24 · 238 阅读 · 0 评论 -
JavaScript之对象迭代
在JS有史以来的大部分时间内,迭代对象属性都是一个难题。ES2017新增了两个静态方法,用于将对象内容转换为序列化的————更重要的是可迭代的————格式Object.values()和Obejct.entries()都接收一个对象,返回它们的内容的数组。Object.values()返回的是对象值得数组,Object.entries()返回键值对数组 const o = { foo: 'bar', baz: 1, qux: {} }; Object.val.原创 2021-03-09 16:44:24 · 1394 阅读 · 0 评论 -
Javascript创建对象方式之原型模式
每个函数都会创建一个prototype属性,这个属性是一个对象,包含应该由特定引用类型的实例共享的属性和方法。实际上,这个对象就是通过调用构造函数创建的对象的原型。使用原型对象的好处是,在它上面定义的属性和方法可以被对象实例共享。原来在构造函数中直接赋给对象实例的值,可以直接赋值给它们的原型。 function Person () {} Person.prototype.name = 'luke'; Person.prototype.age = 29; Person.prototy.原创 2021-03-09 11:13:19 · 198 阅读 · 0 评论 -
JavaScript创建对象方式之工厂函数、构造函数
使用Object构造函数或对象字面量可以方便地创建对象,但这些方式明显不足:创建具有同样接口的多个对象需要重复编写很多代码。ES5并没有正式支持面向对象的结构,比如类或继承。ES6的类都仅仅是封装了Es5.1构造函数加原型继承的语法糖而已。工厂模式构造函数模式原型模式对象迭代工厂模式工厂模式是一种设计模式,广泛应用于软件工厂领域,用于抽象创建特定对象的过程。 function createPerson(name, age, job) { let.原创 2021-03-08 16:34:48 · 250 阅读 · 0 评论 -
JavaScript理解对象Object
对象定义为一组属性得无序集合。意味着对象就是一组没有特定顺序得值。对象得每个属性或方法都有一个名称来标识,这个名称映射到一个值。对象中得this指向对象本身属性的类型ES使用一些内部特性来描述属性的特征。这些特征是由为JS实现引擎的规范定义的。因此,开发者不能在JS中直接访问这些特性。为了将某个特性标识为内部特性,规范会用两个中括号把特性的名称括起来。[[Enumerable]]属性分为:数据属性和访问器属性数据属性数据属性包含一个保存数据值的位置。值会从这个位置读取、写入.原创 2021-03-08 16:33:06 · 208 阅读 · 0 评论 -
JavaScript生成器
生成器是ES6新增的一个灵活结构,拥有在一个函数块内暂停和恢复代码执行的能力。这种能力具有深远的影响,比如,使用生成器可以自定义迭代器和实现协程。生成器基础生成器的形式是一个函数,函数名称前面加一个星号(*)表示它是一个生成器。只要可以定义函数的地方就可以定义生成器。 // 生成器函数声明 function* generatorFn() {} // 生成器函数表达式 let generatorFn = function * () {} // 作为对象字面量方法的生成器函数.原创 2021-03-05 16:22:16 · 381 阅读 · 0 评论 -
JavaScript迭代器
在软件开发领域,iterator得意思就是按照顺序反复多次执行一段程序,通常会有明确的终止条件。ES新增两个高级特性:迭代器和生成器。循环是迭代机制的基础,这是因为它可以指定迭代的次数,以及每次迭代要执行的操作。每次循环都会在下一次迭代开始之前完成,而每次迭代的顺序都是事先定义好的。迭代会在一个有序集合上进行。(有序可以理解为集合所有项都按照既定的顺序被遍历到,特别是开始和结束项有明确的定义。)数组是js中有序集合的最典型例子。数组有已知的长度,且数组每一项都可以通过索引获取,所..原创 2021-03-05 16:21:22 · 281 阅读 · 0 评论 -
JavaScript集合引用类型之Set
Set集合数据结构。Set很多方面像是加强的Map,这是因为它们的大多数API和行为都是共享的。基本API const s = new Set(); // 使用数组初始化集合实例 const s1 = new Set(['val1', 'val2']); alert(s1.size); // 2 // 使用自定义迭代器初始化集合 const s2 = new Set({ [Symbol.iterator]: function*() { yield 'va.原创 2021-03-04 16:38:32 · 428 阅读 · 1 评论 -
JavaScripJavaScrip集合引用类型之Map
Map是一种新的集合类型,为这门语言带来了真正的键值存储机制。Map的大多数特性都可以通过Object类型实现。基本API const m = new Map(); // 使用嵌套数组初始化映射 const m1 = new Map([ ["key1", "val1"], ["key2", "val2"], ["ket3", "val3"] ]); alert(m1.size); // 3 // 使用自定义迭代器初始化映射 const m2 =.原创 2021-03-04 16:36:59 · 222 阅读 · 1 评论 -
JavaScript高程集合引用类型之Array
除了Object,Array就是ES中最常用的了。ES数组跟其他编程语言的数组有很大区别:ES数组自然也是一组有序的数据ES数组中每一个槽位可以存储任意类型的数据ES数组是动态大小的。创建数组的方式new操作符 + Array构造函数 let colors = new Array(); let colors = new Array(20); // length = 20 let colors = new Array('red', 'blue', 'green'); // ..原创 2021-02-26 15:25:25 · 214 阅读 · 0 评论 -
JavaScript高程第三章重读之问题提炼[上]
1.描述一下ECMAScript的变量?ES的变量是松散类型的,变量可以保存任何类型的数据。3个关键字可以声明变量:var、let、const。每个变量只不过是一个用于保存任意值的命名占位符。其他角度let 和 var 的区别const 声明的变量2.描述一下var声明?使用var操作符定义的变量会成为包含它的函数的局部变量。在函数内部定义的变量,在函数退出时被销毁;var声明的范围是函数作用域;在函数内部,省略var定义变量,这个变量是全局变量。不推.原创 2021-02-24 15:13:03 · 155 阅读 · 0 评论 -
JavaScript高程第二章重读之问题提炼
1.<script>元素有哪些属性?8个async,表示即可开始下载脚本,但不能阻止其他页面动作charset,代码字符集。很少使用crossorigin,配置cors跨域设置。默认不使用cors。defer,脚本延迟到文档被解析和显示之后再执行。只对外部脚本有效。integrity,允许比对接收到的资源和指定的加密签名以验证子资源完整性(SRI)。如果接收到的资源的签名与这个属性指定的签名不匹配,则页面会报错,脚本不会执行。该属性可以用来确保内容分发网络(CDN)不会提供恶意内.原创 2021-02-24 10:55:40 · 183 阅读 · 0 评论 -
JavaScript集合引用类型之Array
除了Object,Array就是ES中最常用的了。ES数组跟其他编程语言的数组有很大区别:ES数组自然也是一组有序的数据ES数组中每一个槽位可以存储任意类型的数据ES数组是动态大小的。创建数组的方式new操作符 + Array构造函数 let colors = new Array(); let colors = new Array(20); // length = 20 let colors = new Array('red', 'blue', 'green'); // ..原创 2021-02-24 09:21:26 · 129 阅读 · 0 评论 -
Javascript基本引用类型之Date
理解对象基本js数据类型原始值与原始值包装类型引用值(或者对象)是某个特定引用类型的实例。ES中,引用类型是把数据和功能组织到一起的结构,经常被人错误地称作“类”。从技术上讲js是一门面向对象语言,但ES缺少面向对象编程语言所具备的某些基本结构,包括类和接口。引用类型有时也被称为对象定义。引用类型和类并不是一个概念。对象被认为是某个特定引用类型的实例。新对象通过使用new操作符后跟一个构造函数(constructor)来创建。let now = ne..原创 2021-02-18 14:58:29 · 254 阅读 · 1 评论 -
Javascript变量、作用域与内存
通过变量使用原始值与引用值理解执行上下文理解垃圾回收ES规定,JS变量是松散类型的。由于没有规定定义变量必须包含什么数据类型,变量的值和数据类型在脚本生命周期内可以改变。ES变量有2种不同类型的数据:原始值(primitive value):最简单的数据引用值(reference value):由多个值构成的对象6种原始值:UndefinedNullBooleanNumberStringSymbol保存原始值的变量是按值访问by valu..原创 2021-02-18 14:56:57 · 168 阅读 · 0 评论 -
JavaScript之操作符
操作符ES描述了一组可用于操作数据值的操作符数学操作符位操作符关系操作符相等操作符ES中的操作符是独特的,因为它们可用于各种值(包括字符串、数值、布尔值、对象)。操作符通常会调用valueOf()和/或toString()方法来取得计算的值。一元操作符只操作一个值的操作符叫一元操作符。ES中最简单的操作符。++/–操作符递增和递减操作符直接照搬自C语言,前缀版和后缀版 let age = 29; ++age; // 实际上等于如下表达式 .原创 2021-02-08 11:07:32 · 176 阅读 · 0 评论 -
Vue2和HightCharts
做大数据屏幕展示数据,3D图算是一种毕竟有冲击力的展示方式了。所有这次说一说在Vue2项目里如何使用HighCharts这次主要绘制2种3D饼图高度一致的3D饼图高度不一致的3D饼图1 Vue引入HighCharts npm install highcharts npm install vue-highcharts1.1 在main.js中引入 import highcharts from 'highcharts' import VueHighCha.原创 2021-02-07 15:43:11 · 609 阅读 · 0 评论 -
JavaScript中的Symbol
Symbol类型:ES6新增数据类型。符号是原始值,且符号实例是唯一、不可变的。符号的用途是确保对象属性使用唯一标识符,不会发生属性冲突的危险。symbol并不是为了提供私有属性的行为而新增的。符号就是用来·创建唯一记号,进而用作非字符串形式的对象属性。symbol的基本使用:符号使用Symbol()函数初始化。因为符号本身是原始类型,typeof返回’symbol’ let sym = Symbol(); console.log(typeof sym); //原创 2021-02-07 15:24:05 · 722 阅读 · 0 评论 -
Vue系统性学习第二篇
5 Vuex组件间参数通信Vue项目中,若解构简单,父子组件之间的数据可以使用props或者$emit。5.1 安装和配置vuexnpm install vuex然后在main.js中引入import Vue from 'vuex'import store from './vuex/store'Vue.use(Vuex)new Vue({ el: '#app...原创 2019-08-12 16:11:48 · 258 阅读 · 0 评论 -
Vue <keep-alive>元素分析
vue <keep-alive>实例代码:<template> <div id="Home"> <div class="wrapper"> <sideBar></sideBar> <div class="main" :class="{'content-collap...原创 2019-08-14 11:39:49 · 150 阅读 · 0 评论