九旬
九旬
哈哈 不好意思 才看到您的留言,能帮助到您我也很开心。不过,您能告诉我您在哪里看到我的项目的吗。
> 我也想用一下 特别感谢您了 可以的
暂时没有的,不过后续会开发,请继续关注,请问您是在哪里看到这个项目的呢?
直接使用原生的`sort()`方法: ``` var arr= [1,2,3,4,5] arr.sort(function(a,b){return Math.random() > 0.5 ? 1 : -1}) console.log(arr);// [ 1, 3, 5, 2, 4 ] ```
我比较喜欢使用原生的方法,足够简单,而且可以解决大多数的深拷贝。 ``` var obj1={ name: '张三', age:14, friend:['小红','小白'], parents:{ mother:{name: '李岚',age:34}, father:{name: '张武',age:35} } } var obj2 = JSON.parse(JSON.stringify(obj1)) obj1.mother === obj2.parents.mother//false ```
## new Object() 直接通过构造函数创建一个新对象。 ``` var obj = new Object() //等同于 var obj = {} ``` 使用字面量的方式更简单,其实他俩是一样的。 优点是足够简单,缺点是每个对象都是独立的。 ## 工厂模式 ``` function createObj(name,age){ var obj = {}; obj.name=name; obj.age=age; return...
上面同学说的太好了,简洁好记!!忍不住重复一遍。 > call() 和 apply() 作用都是改变 this 的指向,区别是传参的方式不同。除了第一个参数外,call() 可以接收一个参数列表,apply() 只接受一个参数数组。 bind() 绑定完之后返回一个新的函数,不执行。
## new 的理解 > new 运算符创建一个用户定义的对象类型的实例或具有构造函数的内置对象类型之一 ## new步骤 模拟new操作前,要先知道new操作是发生了什么,就拿`new Object()`举例: 1. 创建一个新对象 2. 把新对象的原型指向构造函数的prototype 3. 把构造函数里的this指向新对象 4. 返回这个新对象 ## 构造函数: 先准备一个构造函数来`new`使用。 ``` function constructorFunction(name, age){ this.name = name; this.age =...
函数的形参是值的传递,传递对象的话,函数接受的是这个对象的指针。 ``` function changeObjProperty(o) { o.siteUrl = "http://www.baidu.com" o = new Object()//这是一个新的对象 o.siteUrl = "http://www.google.com" } let webSite = new Object(); changeObjProperty(webSite); console.log(webSite.siteUrl); //www.baidu.com ```
有没有人给解决一下??