![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Javascript
文章平均质量分 84
亲亲亲西
这个作者很懒,什么都没留下…
展开
-
Javascript学习---构造器和new操作
构造函数构造函数理论上讲也是常规函数,它有以下两个约定:(1)构造函数必须以大写字母开头;(2)它们只有在new操作之后才被执行;这里有个例子:function User(name) { this.name = name; this.isAdmin = false;}let user = new User("Jack");alert(u原创 2018-01-30 23:53:55 · 282 阅读 · 0 评论 -
Javascript学习---函数内置方法call/apply
Javascript默认为每个函数提供了call()和apply()用来设置函数的上下文对象call()call()方法的具体语法内容如下:func.call(context, arg1, arg2, ...)其中context是上下文对象;arg1,arg2,...是函数func的参数,以列表的形式接受这里是一个例子:function say(phrase) { alert(this.nam...原创 2018-02-13 16:49:03 · 1241 阅读 · 0 评论 -
Javascript学习---函数绑定bind()
函数绑定在前面我们已经知道setTimeout()很容易就会丢失this,看下面的例子:let user = { firstName: "John", sayHi() { alert(`Hello, ${this.firstName}!`); }};setTimeout(user.sayHi, 1000); // Hello, undefined!这里this.first...原创 2018-02-13 18:25:12 · 222 阅读 · 0 评论 -
Javascript学习---解构赋值
解构赋值是一种特殊的语法,它允许我们将数组或则对象“解压”到一堆变量里面。数组解构我们可以将数组“解压”到变量中去,例如:// we have an array with the name and surnamelet arr = ["Ilya", "Kantor"]// destructuring assignmentlet [firstName, surname] = ar原创 2018-02-07 19:26:07 · 381 阅读 · 0 评论 -
Javascript学习---Date类型
Javascript提供了内置对象Date来表示日期和时间以及相应的方法。创建new Date()我们可以使用new来创建一个日期/时间对象,如下:let now = new Date();alert( now ); // shows current date/timenew Date(milliseconds)Javascript的Date对象在创建的时候默认保原创 2018-02-07 21:43:20 · 242 阅读 · 0 评论 -
Javascript学习---属性getters和setters
对象的属性有两种类型,第一种是数据属性,第二种是访问器属性。数据属性我们已经很熟悉了,现在我们来讲解第二种属性-访问器属性,也就是set和get属性getters和setters访问器属性由getter和setter方法来表示,例如:let obj = { get propName() { // getter, the code executed on getting obj.prop...原创 2018-02-14 16:04:42 · 969 阅读 · 0 评论 -
Javascript学习---属性的标识符和描述符
到目前为止,我们已经知道对象可以存储属性,属性以简单的键值对形式存储在对象中,但是对象的属性其实是一个复杂和可调的东西。属性的标志一个对象属性除了键和值外,还有三个特殊的属性,被叫做属性标识符:(1)writable:如果为true,则该属性是可写的,否则为只读;(2)enumerable:如果为true,则属性可以被循环列举出,否则则不能被列举;(3)configurable:如果为true,则...原创 2018-02-14 14:15:26 · 613 阅读 · 0 评论 -
Javascript学习---原型继承
原型在Javascript中每一个对象都有一个隐藏的属性--prototype,prototype的值要么为null要么指向一个叫做原型的对象,当我们要调用一个对象不存在的属性时,Javascript会默认从对象的原型获取该属性,这也叫做原型继承。对象的prototype属性是内置且隐藏的,这里有多种方法去设置/获取它,其中的一种方法是使用__proto__,例如:let animal = { ...原创 2018-02-14 17:50:28 · 196 阅读 · 0 评论 -
Javascript学习---F.prototype
F.prototype我们已经知道new F()会创建一个对象。当使用new F()创建一个对象的时候,该对象F.prototype属性会被设置指向对象的原型,看下面例子:let animal = { eats: true};function Rabbit(name) { this.name = name;}Rabbit.prototype = animal;let rab...原创 2018-02-14 23:02:03 · 337 阅读 · 0 评论 -
Javascript学习---原型方法
原型的基本方法Javascript提供了原型的相关方法来获取或设置原型prototype,如下:(1)Object.create(proto[, descriptors]) :产生一个新的对象并设置proto为它的原型;(2)Object.getPrototypeOf(obj) :返回对象obj的原型对象;(3)Object.setPrototypeOf(obj, proto):设置对象obj的原...原创 2018-02-16 13:42:40 · 449 阅读 · 0 评论 -
Javascript学习---对象转换为原型
javascript的原型例如string、numeric和boolean可以相互进行类型转换,同样,object类型也可以转换为原型,但是由于所有对象转换为boolean都为true,所以不存在boolean的转换。因此,object通常只有两种原型转换:一种是string,另一种是numeric。javascript对于object的原型转换有默认的机制,下面简要的记录一下~对象的原型转换机制...原创 2018-01-30 00:52:47 · 309 阅读 · 0 评论 -
Javascript学习---调度:setTimeout&&setInterval
setTimeout&&setInterval有时候我们不想要马上执行函数,而是在未来的特定时间里执行,这就涉及到调度问题,Javascript提供了setTimeout和setInterval这两个函数:(1)setTimeout:允许在指定的时间间隔之后执行函数(一次);(2)setInterval:允许在运行期间定期地执行函数(多次);setTimeoutsetTimeout...原创 2018-02-12 23:10:24 · 244 阅读 · 0 评论 -
Javascript学习---函数对象
我们已经知道Javascript里的值都有对应的类型,函数始终特殊的值,它的类型是对象name属性函数对象包含一些可用的对象,例如name属性function sayHi() { alert("Hi");}alert(sayHi.name); // sayHi显然,name属性返回函数的名字有趣的是,函数名字的指配是灵活的,例如:let sayHi = function() { al...原创 2018-02-12 01:07:22 · 162 阅读 · 0 评论 -
Javascript学习---全局对象
Javascript在被创建的时候就已经有了全局对象这个概念,在浏览器里,全局对象默认是“window”,在Node.js里面叫做“global”全局对象Javascript的全局对象主要有以下两个功能:(1)提供对内置函数和值的访问,例如我们直接调用alert()或者使用window.alert()alert("Hello");// the same aswindow.alert("Hel...原创 2018-02-11 20:46:35 · 281 阅读 · 0 评论 -
Javascript学习---Number类型
Javascript的所有数字类型都是存储在64位格式的IEEE-754中,也就是双精度。声明数字类型的方式当我们要声明一个十亿的数字,通常我们是这样的:let billion = 1000000000;但是这样写很麻烦,毕竟要写这么多个零,javascript还提供了另外的一种写法:let billion = 1e9; // 1 billion, literally:原创 2018-01-31 23:40:39 · 286 阅读 · 0 评论 -
Javascript学习---String类型
在Javascript里,所有的文本数据都以String的类型存储,它没有单个的字符类型。String类型的数据默认以UTF-16的格式存储,跟页面编码没有关系。引号Javascript声明一个字符串有三种形式,分别是单引号、双引号和反引号,例如:let single = 'single-quoted';let double = "double-quoted";let b原创 2018-02-02 00:57:06 · 327 阅读 · 0 评论 -
Javascript学习---Array数组
数组基本内容声明在Javascript里有两种方式来声明一个空的数组,例如:let arr = new Array();let arr = [];赋值我们也可以在声明数组的时候进行赋值,例如:let fruits = ["Apple", "Orange", "Plum"];添加/修改/访问声明数组后,我们可以通过索引号(默认从0开始)来修改原创 2018-02-03 23:25:28 · 292 阅读 · 0 评论 -
Javascript学习---Array数组方法详解
数组修改方法在数组那一章已经介绍了push,pop,shift和unshift方法,接下来这里再记录数组的其他常用方法。splice()前面我们知道要删除对象的属性可以用delete关键字,数组也一样,例如:let arr = ["I", "go", "home"];delete arr[1]; // remove "go"alert( ar原创 2018-02-04 15:17:16 · 310 阅读 · 0 评论 -
Javascript学习---对象篇
ps:趁着寒假时间重新系统地学习javascript,由于当初学习javascript的时候是跟着教学视频学的,现在回忆起来有些零零散散,所以现在赶紧捡起来。要感谢这个网站(点击打开链接),很不错:)。下面是学习过程的笔记~~对象属性javascript对象使用大括号“{}”括起来并且以键值对的形式声明,例如:let user = { // an object原创 2018-01-28 16:41:54 · 295 阅读 · 0 评论 -
Javascript学习---迭代器Iterator
数组内置了一个迭代方法来用于迭代数组的内容,例如for...of就是用到了迭代方法。不单单是Array,像String也同样内置了迭代方法,理论上讲,Javascript为所有对象都提供了迭代机制,对于普通的对象,我们需要手动实现迭代方法。Symbol.iterator要使对象可迭代,我们需要实现Symbol.iterator方法。当我们使用for...of时,Javascript原创 2018-02-04 16:52:23 · 745 阅读 · 0 评论 -
Javascript学习---Map、Set集合
Javascript除了提供对象和数组来作为集合存储数据,还提供了Map、Set这类数据结构来作为集合存放数据Map基本方法Map是一个集合对象,下面是常用的方法:(1)new Map():创建一个map对象;(2)map.set(key,value):存储一个键值对;(3)map.get(key):返回键所对应的值,如果不存在则返回undefined;(4)map.h原创 2018-02-04 19:41:30 · 257 阅读 · 0 评论 -
Javascript学习---Symbol类型
Javascript对象属性名分为两种类型,一种是string类型,另一种是symbol类型。symbol类似于标识符,是唯一的,在创建symbol类型变量的时候,我们可以为它添加描述,由于symbol值是唯一的,所以即使描述相同,它们也是不等的,例如:let id1 = Symbol("id");let id2 = Symbol("id");alert(id1 == id2); //原创 2018-01-28 20:10:27 · 199 阅读 · 0 评论 -
Javascript学习---对象方法、this关键字
添加对象方法方法也是对象的属性,我们可以创建一个函数并将它关联到对象中,如下:let user = { name: "John", age: 30};user.sayHi = function() { alert("Hello!");};user.sayHi(); // Hello!当然,我们也可以先声明函数再赋值,例如:let user = {原创 2018-01-28 23:51:41 · 205 阅读 · 0 评论 -
Javascript学习---Rest参数和拓展操作
javascript的许多内置函数都支持任意数量的参数,比如Math.max(arg1, arg2, ..., argN),Object.assign(dest, src1, ..., srcN)等等Rest参数“...”一个函数可以被任意个参数调用,例如:function sum(a, b) { return a + b;}alert( sum(1, 2, 3, 4, 5) );使用多...原创 2018-02-10 23:16:38 · 352 阅读 · 0 评论 -
Javascript学习---JSON详解
有时候我们需要将Javascript对象转换为string用于网络传输,通常转换为字符串我们会手动实现toString()方法,例如:let user = { name: "John", age: 30, toString() { return `{name: "${this.name}", age: ${this.age}}`; }};alert(user); /...原创 2018-02-08 15:53:55 · 214 阅读 · 0 评论