所谓js的中的传值,其实也就是说5种基本数据类型(null,undefind,boolean,number,string) 传引用也就是说的那个引用数据类型,(array和object) 基本数据类型的值不可变,而引用数据类型的值是可变的 所以当你比较数组和对象时,都是false;除非你是克隆的原份数据 即: var a = { name: "李四" }; var b = a; 大家通常称对象为引用类型,以此来和基本类型进行区分; 而对象值都是引用,所以的对象的比较也叫引用的比较,当且…
一.前言 放了个元旦,休息了三天,加上春运抢票一系列事情的冲击,我感觉我的心已经飞了.确实应该收收心,之前计划的学习任务也严重脱节了:我恨不得打死我自己. 在上篇博客中,笔记记录到了关于构造函数方面的一些写法和用法,这篇博客,会从原书中数组直接量开始,自己读了下之前的博客,还是有点照搬概念的意思,想了下,还是得简化概念,按照自己的思路去写,那么开始. 二.数组直接量 概要:创建数组的两种方式,Array()创建的隐性问题 在JS中,数组也是对象,我们可以通过内置构造函数Array()创建数组,也…
JS合并两个数组的方法 我们在项目过程中,有时候会遇到需要将两个数组合并成为一个的情况.比如: var a = [1,2,3]; var b = [4,5,6]; 有两个数组a.b,需求是将两个数组合并成一个.方法如下: 1.concat js的Array对象提供了一个叫concat()方法,连接两个或更多的数组,并返回结果. var c = a.concat(b);//c=[1,2,3,4,5,6]; 这里有一个问题,concat方法连接a.b两个数组后,a.b两个数组的数据不变,同时会返回一…
JS合并两个数组的方法 我们在项目过程中,有时候会遇到需要将两个数组合并成为一个的情况.比如: var a = [1,2,3]; var b = [4,5,6]; 有两个数组a.b,需求是将两个数组合并成一个.方法如下: 1.concatjs的Array对象提供了一个叫concat()方法,连接两个或更多的数组,并返回结果. var c = a.concat(b);//c=[1,2,3,4,5,6]; 这里有一个问题,concat方法连接a.b两个数组后,a.b两个数组的数据不变,同时会返回一个…
数组的拷贝 > 数组的深拷贝,两层 var arr = [[1,2,3],[4,5,6],[7,8,9]]; var arr2 = []; 循环第一层数组 for(var i=0,len=arr.length;i<len;i++){ 循环第二层数组 for(var k=0,lens=arr[i].length;k<lens;k++){ 把每一个数组的内容添加到数组2中 arr2.push(arr[i][k]); } } console.log(arr2); //[1, 2, 3, 4,…
代码取自于underscore.js 1.8.3的isEqual函数. 做了一些小小的修改,主要是Function的比较修改. 自己也加了一些代码解读. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>js中两个对象的比较</title> <script> /* 需求难点描述: 数组和对象,都…
1.Object类型(引用类型) 不具备多少功能,但是对于在ECMAScript中存储和传递数据确实,确是很理想的选择. 创建方式:(1).使用new Object();方式创建对象,然后对对象进行设置属性及其值 eg:var box=new Object(); box.name='abc'; box.age=21;这样就创建了一个对象,并且具有两个属性,名为name和age,其值为'abc'和21: (2).按照一种的方法 也可以省去关键字 new:即var box=Object(); (3)…
前端开发中,在做项目的时候,我们经常需要对一个变量进行数组类型的判断,当然即使你暂时没遇到,但是这个问题也是大家去面试时的高频问题,有必要拿出来说一说. 大家都知道js中可以使用typeof来判断变量的基本类型,如: 但是这个方法不适用于来判断数组,因为不管是数组还是对象,都会返回object,这就需要我们需求其他的方法. 有三种方法可以拿来判断: 1.constructor属性 这个属性在我们使用js系统或者自己创建的对象的时候,会默认的加上,例如: 所以我们就可以这样来判断: 2.insta…
大牛请无视此篇! JS主要分基本数据类型和引用数据类型,这两者区别可大了,此篇看完必有长进,下面进入正题 首先我们看下什么是基本数据类型(概念我就不说了,直接上代码): var i = 10: var x = 11: var y = ‘lemon’ var z = ‘柠檬’ 这些最基本的就是基本数据类型了,下面看下什么是引用数据类型: var arr = [1,2,3,4,5]; var arr = ['lemon1','lemon2','lemon3']; var obj = { name:'…
在开始正式的内容之前,不得不说说js中的数据类型和数据结构,以及一些比较容易让人混淆的概念.那么为什么要从数组说起?数组在js中是最常见的内存数据结构,数组数据结构在js中拥有很多的方法,很多初学者记不清数组的大多数用法,只知道push,pop,shift等最基本的几个.所以,本系列(数组篇)会尽可能的让大家对数组有一个透彻的了解.也方便后面其他数据结构的学习和使用. 可能很多web前端开发者都会有一个疑问,那就是,数组和对象究竟是数据类型?还是数据结构?那么我们就带着这样的疑问,开始下面的学习…