
Js
yyang_233
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
理解Array.prototype.slice.call(arguments)
1、基本讲解1.在js里Array是一个类 slice是此类里的一个方法 ,那么使用此方法应该Array.prototype.slice这么去用slice这方法如何使用呢?arrayObj.slice(start, [end]) 很显然是截取数组的一部分。2.我们再看callcall([thisObj[,arg1[arg2[[argN]]]]])thisObj是一个对象的方法arrg1~argN是参数那么Array.prototype.slice.call(arguments,1);这句话原创 2020-09-24 12:46:28 · 362 阅读 · 0 评论 -
es5严格模式学习总结
try里面的代码发生错误,不会执行错误后的try里面的代码,接着执行外部的代码;try里面的代码发生错误,执行catch里面的代码,将错误信息显示try{ console.log('a'); console.log(b); console.log(c);}catch(e){ // error error.message error.name --> error console.log(e.name + ':' + e.message);}console.log('d');erro原创 2020-08-07 16:08:33 · 192 阅读 · 0 评论 -
数组,类数组学习总结13
数组是基于对象的数组定义数组的方式var arr = []; // 数组字面量var arr = new Array(); // 系统提供的构造方法来源于 Array.prototype数组的读和写arr[num] // 不可以溢出读,结果是undefinedarr[num] = xxx; // 可以溢出写数组常用的方法es3.0改变原数组push 可向数组的末尾添加一个或多个元素,并返回新的长度。pop 删除并返回数组的最后一个元素。shift 删除并返回数组的第一个元素.原创 2020-08-06 18:46:12 · 316 阅读 · 0 评论 -
克隆学习总结12
所谓拷贝,就是赋值。把一个变量赋给另外一个变量,就是把变量的内容进行拷贝。把一个对象的值赋给另外一个对象,就是把一个对象拷贝一份。浅克隆浅拷贝是创建一个新对象,这个对象有着原始对象属性值的一份精确拷贝。如果属性是基本类型,拷贝的就是基本类型的值,如果属性是引用类型,拷贝的就是内存地址 ,所以如果其中一个对象改变了这个地址,就会影响到另一个对象。const obj = {a:1, b:2};const obj2 = obj;obj2.a = 3;console.log(obj.a); //.原创 2020-08-06 18:46:49 · 317 阅读 · 0 评论 -
继承,对象枚举学习总结11
继承发展史传统形式 --> 原型链过多的继承了没用的属性Grand.prototype.lastName = "yang";function Grand(){}var grand = new Grand();Father.prototype = grand;function Father(){ this.name = "heihei";}var father = new Father();Son.prototype = father;function Son(){}v原创 2020-08-06 16:16:27 · 127 阅读 · 0 评论 -
this学习总结10
函数预编译过程 this->window全局作用域 this->windowcall/apply 改变函数运行时this指向obj.func() func里面的this指向obj一、在一般函数方法中使用 this 指代全局对象function test(){ this.x = 1 console.log(this.x)}test(); // 1 this--->window二、作为对象方法调用,this 指代上级对象谁调用了这个方法,this就指向.原创 2020-08-07 15:00:16 · 302 阅读 · 0 评论 -
call,apply,bind学习总结9
callfunction test(){}test(); ---> test.call();其实test.call()才是这个函数真正的执行。call的根本作用是改变this的指向。利用别人的函数实现自己的功能。function Person(name,age){ this.name=name; this.age=age;}Person(); ---> Person.call();var obj={};Person.call(obj,'minmin',18)ca原创 2020-08-05 15:48:08 · 286 阅读 · 0 评论 -
原型,原型链学习总结8
原型定义:原型是function对象的一个属性,它定义了构造函数制造出的对象的公共祖先。通过该构造函数产生的对象,可以继承该原型的属性和方法。原型也是对象。// Person.prototype --原型// Person.prototype={} --祖先Person.prototype.name="minmin"function Person(){}var person = new Person();var person1 = new Person();构造函数是用来生产对象的原创 2020-08-05 15:45:10 · 142 阅读 · 0 评论 -
对象,包装类学习总结7
当一个变量没声明就使用会报错但是当一个对象的属性没声明就使用不会报错,是undefined对象的创建对象字面量/对象直接量var obj = {};构造函数系统自带的构造函数 Object()var obj = new Object();自定义function Car(color){ this.color = color; this.name = "BMW"; this.height = "1400"; this.lang = "4000"; this.weight = 1000原创 2020-08-05 15:40:59 · 179 阅读 · 0 评论 -
闭包学习总结6
function a(){ function b(){ var bbb = 234; document.write(aaa); } var aaa = 124; return b;}var glob = 100;var demo = a();demo(); // 124a() 执行完了,要销毁a的AO,但是在销毁AO之前,把b保存到外面去了,把a()执行的结果放到demo里面去了,在demo执行之前,a的AO已经被销毁了,但是b还有a的AOfunction a(){原创 2020-07-25 11:10:49 · 153 阅读 · 0 评论 -
立即执行函数学习总结5
立即执行函数执行完就会把这个函数立即释放销毁。适合做初始化工作。写法:(function(){}()); --> w3c建议使用这种(function(){})();只有表达式才能被执行符号执行//这种写法不行,会报语法错误function test () { var a=123;}() 因为括号前面一块叫函数声明。//这种写法可以var test = function() { var a=123; console.log(a);}()原创 2020-07-25 09:02:34 · 174 阅读 · 0 评论 -
作用域,作用域链学习总结4
函数就像一个屋子一样,这个屋子的形成就好像形成了一个单独的域,和外界有一些阻隔,里面可以看到外面的,外面的不能看到里面。作用域var a = 123;function test(){ document.write(a); // 123 var b = 456;}test();document.write(b); // b is not defined函数里面可以访问函数外面的东西,a是全局变量;函数外面不能访问函数里面的东西 ,b是局部变量作用域定义变量(变量作用域又称上下文.原创 2020-07-23 12:12:28 · 190 阅读 · 0 评论 -
预编译学习总结3
js特点:单线程解释性语言:翻译一句执行一句js运行三部曲1.语法分析通篇扫描一遍,但是不执行2.预编译3.解释执行预编译函数声明 整体提升变量 声明提升预编译前奏暗示全局变量 imply global即任何变量,如果变量未经声明就赋值,此变量为全局对象 window所有。全局对象是window。function fn(){var a=b=123;}123赋值给b,此时b未声明,归window所有,window.b=123;声明a,再把b赋值给a,window.a=原创 2020-07-21 12:10:55 · 116 阅读 · 0 评论 -
函数学习总结2
函数声明function func(){}// fun 表示函数体// func() 表示执行函数函数表达式命名函数表达式var func = function test(){}// func(); 表示执行函数// test; test is not defined 表达式是忽略名字的 写了test也没什么作用// func.name --> test匿名函数表达式var func = function (){}// func(); // func.name -原创 2020-07-16 20:28:06 · 231 阅读 · 0 评论 -
typeof(),类型转换学习总结1
typeof()有两种写法:typeof() typeof加空格typeof 可以给我们返回六种数据类型,number,string,booleanobject,undefined,functionnull最开始是代替空对象的形式出现的,给对象来占位的,类型转换var num = 1 + 1 // 2 numbervar num = 1 + '1' // 11 stringvar num = 1 - '1' // 0 numbervar num = '2' - '1' // 1 nu原创 2020-07-14 21:23:56 · 1321 阅读 · 0 评论 -
Dom节点和属性操作
DOM操作一、访问/获取节点document.getElementById(id);//返回对拥有指定id的第一个对象进行访问document.getElementsByName(name);//返回带有指定名称的节点集合document.getElementsByTagName(tagname); //返回带有指定标签名的对象集合document.getElementsByClassName(classname); //返回带有指定class名称的对象集合querySele原创 2020-06-13 14:52:41 · 961 阅读 · 0 评论 -
将时间戳转换成时间格式化字符串
如何将时间戳转换成时间格式化字符串** 服务器返回时间是一串数字 以Unix时间元年为起点,返回对应的时间戳** 时间戳是秒将时间戳转换成Date对象(毫秒)将Date进行格式化,转换成对应的字符串** 格式 (data,‘yyyy-MM-dd hh:mm:ss’)** 格式 (data,‘yyyy/MM/dd hh:mm:ss’)y:year 年M:Month 月 (大写,和...原创 2020-04-29 15:32:48 · 1137 阅读 · 0 评论