![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
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 · 435 阅读 · 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 · 156 阅读 · 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 · 215 阅读 · 0 评论 -
js常用函数
js属性对象的hasOwnProperty方法:添加链接描述 string对象常用方法:添加链接描述 jQuery的deferred对象详解: 添加链接描述原创 2020-04-21 11:13:41 · 96 阅读 · 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 · 79 阅读 · 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 · 96 阅读 · 0 评论 -
Js中的构造函数、原型、原型链、继承
写在前头 首先思考一个问题,我们知道通过构造函数和new操作符可以创建一个新的对象,并且同一个构造函数可以创建出相同属性和方法的对象,这正是prototype所做的(使用原型对象的好处是可以让所有实例共享它所包含的属性和方法)。并且,在其他构造函数中通过call和apply调用其他构造函数不就可以实现继承了吗,那我们还要prototype做什么? 原因是,其实new操作符生成的对象并不能共享属性和...原创 2019-10-28 09:54:08 · 106 阅读 · 0 评论 -
js好文
apply,call,bind:添加链接描述 js包装对象:添加链接描述 JS属性描述对象:添加链接描述 数据类型概述:添加链接描述 js语言的对象体系,不是基于类的,而是基于构造函数和原型链。JavaScript 语言使用构造函数(constructor)作为对象的模板。所谓”构造函数”,就是专门用来生成实例对象的函数。它就是对象的模板,描述实例对象的基本结构。一个构造函数,可以生成多个实例对象...原创 2019-10-25 17:29:54 · 103 阅读 · 0 评论 -
js json对象
JSON 格式(JavaScript Object Notation的缩写)是一种用于数据交换的文本格式,目的是取代繁琐笨重的 XML 格式。 每个 JSON 对象就是一个值,可能是一个数组或对象,也可能是一个原始类型的值。总之,只能是一个值,不能是两个或更多的值。 json对值得类型和格式有严格的规定: 1:复合类型的值只能是数组或对象,不能是函数、正则表达式对象、日期对象。 2:原始类型的值只...原创 2019-10-22 11:10:13 · 97 阅读 · 0 评论 -
js立即执行函数
立即执行函数常用于第三方库,好处在于隔离作用域,任何一个第三方库都会存在大量的变量和函数,为了避免变量污染(命名冲突),开发者们想到的解决办法就是使用立即执行函数。 什么是立即执行函数(IIFE) 在了解立即执行函数之前先明确一下函数声明、函数表达式及匿名函数的形式,如下图: 接下来看立即执行函数的两种常见形式:( function(){…} )()和( function (){…} () ),...原创 2019-10-22 09:35:24 · 71 阅读 · 0 评论 -
JS面向对象-对象的继承
大部分面向对象语言,都是通过类(class)实现对象的继承,但是js语言的继承不通过class,而是通过原型对象(prototype)实现。 构造函数的缺点: js通过构造函数生成新对象,因此,构造函数可以视为对象的模板。实例对象的属性和方法,可以定义在构造函数的内部。 function Cat(name,color){ this.name = name; this.color = color...原创 2019-10-22 09:02:34 · 130 阅读 · 0 评论 -
js中!和!!的区别及用法
1:!可将变量转换成boolean类型,null、undefined和空字符串取反都为true。 var a = null; if(a){ console.log(1); }else{ console.log(2); } //输出:2 if(!a){ console.log(1); }else{ console.log(2); } //输出:1 2:!!常常用来做类型判断,在第一步!之...原创 2019-10-18 13:32:30 · 203 阅读 · 1 评论 -
js常用函数链接
1:parseInt() https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/parseInt 2:parseFloat() https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Obje...原创 2019-10-14 08:10:42 · 110 阅读 · 0 评论 -
js中escape()、encodeURI()、encodeURIComponent()的区别
1:escape()函数不能直接用于url编码,它的真正作用是返回一个字符的Unicode编码值。 如:escape('hello world');//hello%20world 2:encodeURI()除了常见的符号以外,对网址中有特殊含义的符号:/ ? : @ & = + $ #等不进行编码。编码后,它输出符号的utf-8形式,并且在每个字节前加上%。 如:console.lo...原创 2019-10-12 09:09:14 · 77 阅读 · 0 评论 -
js杂谈
js中的一切都区分大小写(变量、函数名、操作符)。 js中有5种基本的数据类型:undefined、null、boolean、Number、String。还有一种复杂的数据类型:Object。 函数名仅仅是指向函数的指针,所以一个函数可能有多个名字。 解析器在向执行环境中加载数据时,对函数声明和函数表达式并非一视同仁,解析器会先读取函数声明,并将其在执行任何代码之前可用,至于函数表达式,则必须等到...原创 2019-10-16 17:10:21 · 151 阅读 · 0 评论 -
EC6
ECMAScript和Javascript的关系:前者是后者的规格,后者是前者的一种实现。 Babel转码器:Babel是一个广泛使用的转码器,可以将ES6的代码转为ES5的代码,从而在现有环境执行。这就意味着你可以用ES6的方式编写程序,又不用担心现有环境是否支持。 在现有项目目录中安装Babel:npm install --save let声明的变量只在它所在的代码块有效。 var a = [...原创 2019-04-16 19:31:35 · 250 阅读 · 0 评论 -
js中window onload和$(function(){})区别
(function())是在DOM文档树加载完之后在执行(DOM文档树加载完并不代表全部内容都加载完)。而window.onload是在页面的所有文件都加载完才执行的,也就是说(function(){})是在DOM文档树加载完之后在执行(DOM文档树加载完并不代表全部内容都加载完)。而window.onload是在页面的所有文件都加载完才执行的,也就是说(function())是在DOM文档树加载...原创 2019-02-22 09:14:28 · 1075 阅读 · 0 评论