zoukankan      html  css  js  c++  java
  • Javascript基础系列(四)-引用类型

    引用类型

    引用类型是一种数据结构,用于将数据与功能组织在一起,常被称为类。 也可以称为对象的定义,因为他们描述的是一类对象所具备的属性和方法

    Object类型

    实例定义方式

    构造函数的方式
    var obj = new Object();
    obj.name = 'zhangsan';
    console.info(obj.name);
    
    字面量的形式
    var person = {};
    person.name = 'zhangsan';
    console.info(person.name);
    

    Array类型

    实例定义方式

    构造函数的方式
    var obj = new Array();
    obj[0] = "zhangsan"
    console.info(obj[0]);
    
    字面量的形式
    var person = [];
    person[0] = 'zhangsan';
    console.info(person.name);
    

    检测是否是数组

    instanceof/Array.isArray(value);
    

    转换方法

    join toString toLocaleString valueOf...
    

    栈方法

    var len = push(el1,el2...) 将元素推入栈顶并返回数据长度
    var item = pop() 取出元素最后一项并返回
    

    队列方法

    shift() 移除数组中的第一项并返回
    unshift(el1,el2...) 将元素推入起始位置并返回数据长度
    

    重排序方法

    reverse()  数组翻转顺序
    sort(compare)    根据compare排序器排序
    
    function compare(v1, v2) {
    	return v1-v2;
    } 
    var values = [4,1,2,5,3];
    var vv = values.sort(compare);
    console.info(vv);
    

    操作方法

    [].concat([]); 复制一个数组的副本与另一个数组合并返回新的数组
    splice 操作数组中指定位置的元素; 删除、替换、添加
    slice  截取某个数组段
    
    splice(p1, p2, args)
    p1: 起始操作位置
    p2: 删除项数 <=0不删除,只添加
    args: 新的项
    
    var newArr = arr.slice(start, end);
    start: 起始位置
    end:结束位置
    

    位置方法

    indexOf(),lastIndexOf() 返回某个元素的位置
    

    迭代方法

    every(function) 检测是否所有项都满足条件 , 返回true,false
    some(function) 检测至少有一项满足条件 , 返回true,false
    
    filter(function) 过滤出满足条件的数组项
    
    forEach(function) 迭代所有项
    map(function) 迭代所有项
    

    归并方法

    语出《后汉书·广陵思王荆传》:“若归并二国之众,可聚百万。”
    reduce() 与 reduceRight() 
    
    var values = [1,2,3,4,5];
    var sum = values.reduce( function (pre, curr, index, array) {
    	return pre+ curr;
    });
    console.info(sum);
    

    Date类型

    var d = new Date();
    d.toLocaleDateString();
    d.toLocaleTimeString();
    

    RegExp类型

    表现形式 / pattern / flags[g 全局模式,i不区分大小写,m多行模式]

    字面量表达式
    var reg = /at/i;
    reg.text('at');
    
    实例化创建
    var reg= new RegExp('at', 'i');
    reg.test('at');
    

    Function类型

    没有重载的表现

    1. Function类型可以不显式指定参数个数, 通过arguments.length可以获取到参数个数及通过arguments获取到参数值
    2. 由于每个函数变量都是指针指向函数对象
    3. 函数变量重新赋值即改变了指针的指向

    函数申明和函数表达式

    函数申明
    function test() {}
    
    函数表达式
    var test = function(){}
    
    区别: 
    如果函数表达式未执行到,其函数变量执行将会提示 not function
    

    作为值的函数

    函数变量实际是一个指针指向函数对象,故可以直接当做参数传递给其他函数调用

    funciton test() {console.info('test')}
    
    function testFn(fn) {
    	fn();
    }
    testFn(test);
    

    函数方法和属性 arguments, this, prototype, length

    其他单体内置对象

    1. Global

    像常用到的方法 parseInt() isNaN() isFinite() ... 都是Global的方法 URI编码方法 encodeURI 和 encodeURIComponent的区别 encodeURI 不会对本身属于URI的特殊进行编码,如: # / encodeURIComponent 会对所有非标准字符进行编码

    var global = function(){
    	return this;
    }();
    
    1. Math

    最常用的Math.random() 返回一个0-1之间的随机数

  • 相关阅读:
    伪元素 first-letter
    html语义化 -------<fieldset>和<legend>
    《ASP.NET MVC4 WEB编程》学习笔记------ViewBag、ViewData和TempData的使用和区别
    《ASP.NET MVC4 WEB编程》学习笔记------.net mvc实现原理ActionResult/View
    《ASP.NET MVC4 WEB编程》学习笔记------RenderBody,RenderPage,RenderSection
    《转》Visual Studio 2010 终极定制安装精简方法
    《转》IIS中配置通配符应用程序映射
    IIS安装时,添加/编辑应用程序扩展名映射 确定按钮不可用。
    异常:操作可能会破坏运行时稳定性
    petri网学习心得
  • 原文地址:https://www.cnblogs.com/pengsn/p/12665349.html
Copyright © 2011-2022 走看看