Javascript
你去了哪里
这个作者很懒,什么都没留下…
展开
-
js对象修改引用传递采坑
今天踩了一个坑,只怪自己学艺不精。在此记录一下。有问题的代码:let GoodsObject = {goodsStarLists: [],productStarLists: {},init: function(){GoodsObject.initStar();GoodsObject.getProduct();},initStar: function(){let goodsStarLists = [];for(let i = 1;i <= 2;i++){原创 2021-11-28 16:29:08 · 450 阅读 · 0 评论 -
js遍历对象
1:Object.keys():返回一个数组,包括对象自身的(不含继承的)所有可枚举属性。var obj = {"name": "lbj","age": 25,"height": 180};Object.keys(obj).forEach(function(key){ console.log(key,obj[key]);});输出:> "name" "lbj"> "age...原创 2020-04-27 15:02:47 · 184 阅读 · 0 评论 -
js遍历数组
1:for循环var arr = ['a','b','c','d'];for(let i = 0;i < arr.length;i++){ console.log(arr[i])}2:for of循环可以正确响应break、continue和return语句var arr = ['a','b','c','d'];for(let value of arr){ console...原创 2020-04-27 14:53:44 · 222 阅读 · 0 评论 -
js常用函数
js属性对象的hasOwnProperty方法:添加链接描述string对象常用方法:添加链接描述jQuery的deferred对象详解: 添加链接描述原创 2020-04-21 11:13:41 · 105 阅读 · 0 评论 -
JavaScript 的 this 原理
本文来自:添加链接描述var obj = { foo: function(){}}var foo = obj.foo;//写法一:obj.foo();//写法二:foo();上面代码中,虽然obj.foo和foo都指向同一个函数,但执行结果可能不一样。如:var obj = { foo: function () { console.log(this.bar) }, ...原创 2019-10-28 14:49:00 · 106 阅读 · 0 评论 -
JS-构造函数的继承
1、apply();function Student(name, age, grade) { Person.apply(this, arguments); // 用apply调用Person,this(Student)代替Person的this,达到继承Person的对象和方法的目的 this.grade = grade;}function Person(name, age...原创 2019-10-28 14:14:47 · 119 阅读 · 0 评论 -
Js中的构造函数、原型、原型链、继承
写在前头首先思考一个问题,我们知道通过构造函数和new操作符可以创建一个新的对象,并且同一个构造函数可以创建出相同属性和方法的对象,这正是prototype所做的(使用原型对象的好处是可以让所有实例共享它所包含的属性和方法)。并且,在其他构造函数中通过call和apply调用其他构造函数不就可以实现继承了吗,那我们还要prototype做什么?原因是,其实new操作符生成的对象并不能共享属性和...原创 2019-10-28 09:54:08 · 115 阅读 · 0 评论 -
js好文
apply,call,bind:添加链接描述js包装对象:添加链接描述JS属性描述对象:添加链接描述数据类型概述:添加链接描述js语言的对象体系,不是基于类的,而是基于构造函数和原型链。JavaScript 语言使用构造函数(constructor)作为对象的模板。所谓”构造函数”,就是专门用来生成实例对象的函数。它就是对象的模板,描述实例对象的基本结构。一个构造函数,可以生成多个实例对象...原创 2019-10-25 17:29:54 · 130 阅读 · 0 评论 -
js json对象
JSON 格式(JavaScript Object Notation的缩写)是一种用于数据交换的文本格式,目的是取代繁琐笨重的 XML 格式。每个 JSON 对象就是一个值,可能是一个数组或对象,也可能是一个原始类型的值。总之,只能是一个值,不能是两个或更多的值。json对值得类型和格式有严格的规定:1:复合类型的值只能是数组或对象,不能是函数、正则表达式对象、日期对象。2:原始类型的值只...原创 2019-10-22 11:10:13 · 105 阅读 · 0 评论 -
js立即执行函数
立即执行函数常用于第三方库,好处在于隔离作用域,任何一个第三方库都会存在大量的变量和函数,为了避免变量污染(命名冲突),开发者们想到的解决办法就是使用立即执行函数。什么是立即执行函数(IIFE)在了解立即执行函数之前先明确一下函数声明、函数表达式及匿名函数的形式,如下图:接下来看立即执行函数的两种常见形式:( function(){…} )()和( function (){…} () ),...原创 2019-10-22 09:35:24 · 82 阅读 · 0 评论 -
JS面向对象-对象的继承
大部分面向对象语言,都是通过类(class)实现对象的继承,但是js语言的继承不通过class,而是通过原型对象(prototype)实现。构造函数的缺点:js通过构造函数生成新对象,因此,构造函数可以视为对象的模板。实例对象的属性和方法,可以定义在构造函数的内部。function Cat(name,color){ this.name = name; this.color = color...原创 2019-10-22 09:02:34 · 159 阅读 · 0 评论 -
js中!和!!的区别及用法
1:!可将变量转换成boolean类型,null、undefined和空字符串取反都为true。var a = null;if(a){ console.log(1);}else{ console.log(2);}//输出:2if(!a){ console.log(1);}else{ console.log(2);}//输出:12:!!常常用来做类型判断,在第一步!之...原创 2019-10-18 13:32:30 · 253 阅读 · 1 评论 -
js常用函数链接
1:parseInt() https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/parseInt2:parseFloat() https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Obje...原创 2019-10-14 08:10:42 · 137 阅读 · 0 评论 -
js中escape()、encodeURI()、encodeURIComponent()的区别
1:escape()函数不能直接用于url编码,它的真正作用是返回一个字符的Unicode编码值。如:escape('hello world');//hello%20world2:encodeURI()除了常见的符号以外,对网址中有特殊含义的符号:/ ? : @ & = + $ #等不进行编码。编码后,它输出符号的utf-8形式,并且在每个字节前加上%。如:console.lo...原创 2019-10-12 09:09:14 · 105 阅读 · 0 评论 -
js杂谈
js中的一切都区分大小写(变量、函数名、操作符)。js中有5种基本的数据类型:undefined、null、boolean、Number、String。还有一种复杂的数据类型:Object。函数名仅仅是指向函数的指针,所以一个函数可能有多个名字。解析器在向执行环境中加载数据时,对函数声明和函数表达式并非一视同仁,解析器会先读取函数声明,并将其在执行任何代码之前可用,至于函数表达式,则必须等到...原创 2019-10-16 17:10:21 · 161 阅读 · 0 评论 -
EC6
ECMAScript和Javascript的关系:前者是后者的规格,后者是前者的一种实现。Babel转码器:Babel是一个广泛使用的转码器,可以将ES6的代码转为ES5的代码,从而在现有环境执行。这就意味着你可以用ES6的方式编写程序,又不用担心现有环境是否支持。在现有项目目录中安装Babel:npm install --savelet声明的变量只在它所在的代码块有效。var a = [...原创 2019-04-16 19:31:35 · 269 阅读 · 0 评论 -
js中window onload和$(function(){})区别
(function())是在DOM文档树加载完之后在执行(DOM文档树加载完并不代表全部内容都加载完)。而window.onload是在页面的所有文件都加载完才执行的,也就是说(function(){})是在DOM文档树加载完之后在执行(DOM文档树加载完并不代表全部内容都加载完)。而window.onload是在页面的所有文件都加载完才执行的,也就是说(function())是在DOM文档树加载...原创 2019-02-22 09:14:28 · 1080 阅读 · 0 评论