Web前端------JS基于对象和Array的几个函数调用

JS基于对象

JS是一门基于对象的编程语言,没有面向对象语言中类的概念,只有唯一的对象Object,所有扩展的对象都是基于Object创建出来的,其本质依旧是object对象。

创建对象的四种方式
  • 第一种:显式调用new Object()

    var student = new Obbject();
    student.name="春天";
    student.sport=function (form){
         console.log(this.name+"的运动方式是"+form);
    }
    
  • 第二种:函数调用

    var stu = function (){
         var student =  new Object();
         student.name="春天";
         student.sport=function (form){
         console.log(this.name+"的运动方式是"+form);
         }
         return student;
    }
    var student = stu ();  
    student.sport("run");
    
  • 第三种:构造函数

    //有无返回值均可
    function Student(name,age,form){
          this.name=name;
          this.age=age;
          this.sport=function (){
              console.log(this.name+"的运动方式是"+form);
        }
    }
    
    var student= new Student("lxh","18","run");
    student.sport();
    
  • 第四种:对象字面量

    var myObject={
             propertyA: sha ,
             propertyB: feng ,
             methodA:function(){
             alert(this.propertyA+ +this.propertyB);
             },
            methodB:function(){}
    }
    
    myObject.methodA();
    
Array的常见方法
  • Instanceof: 是一个关键字。 判断A是否是B类型。
    布尔类型值 = A Instanceof B ;

  • Array.isArray() //HTML5中新增 判断是不是数组
    布尔类型值 = Array.isArray(变量) ;
    调用者:Array
    参数:变量(被检测值)
    返回值:布尔类型

  • toString() //把数组转换成字符串,每一项用,分割
    字符串 = 数组.toString();

  • valueOf() //返回数组对象本身
    数组本身 = 数组.valueOf();

  • Join //根据每个字符把数组元素连起来变成字符串
    字符串 = 数组.join(变量);
    变量可以有可以没有。不写默认用逗号分隔,无缝连接用空字符
    串。

  • push() //在数组最后面插入项,返回数组的长度
    数组1改后的长度 = 数组1.push(元素1);

  • pop() //取出数组中的最后一项,返回最后一项
    被删除的元素 = 数组1.pop();

  • unshift() //在数组最前面插入项,返回数组的长度
    数组1改后的长度 = 数组1.unshift(元素1);

  • shift() //取出数组中的第一个元素,返回最后一项
    被删除的元素 = 数组1.shift();

  • reverse() //翻转数组(原数组讲呗反转,返回值也是被反转后
    的数组)
    反转后的数组 = 数组1.reverse();

  • sort(); //给数组排序,返回排序后的数组。如何排序看参数。
    从小到大排序后的数组 = 数组1.sort(function(a,b){
    return a-b;
    });
    无参:按照数组元素的首字符对应的Unicode编码值从小到大排列数组元素。
    带参:必须为函数(回调函数--callback)。函数中带有两个参数,代表数组中的 前后元素。如果计算后(a-b),返回值为负数,a排b前面。等于0不动。 返回值为正数,a排b后面。

  • concat() //把参数拼接到当前数组
    新数组 = 数组1.concat(数组2);

  • slice() //从当前数组中截取一个新的数组,不影响原来的数组,参
    数start从0开始,end从1开始
    新数组 = 数组1.slice(索引1,索引2);

  • splice()//删除或替换当前数组的某些项目,参数
    start,deleteCount,options(要替换的项目)
    新数组 = 数组1.splice(起始索引,结束索引,替换内容);

  • indexOf()、lastIndexOf() //如果没找到返回-1
    索引值 = 数组.indexOf/lastIndexOf(数组中的元素);

  • every()、filter()、forEach()、map()、some()

 数组/boolean/无 = 数组.every/filter/forEach/map/some(
         function(element,index,arr){
            程序和返回值;                       
         }
 );
 //对数组中每一项运行以下函数,如果都返回true,every返回
 true,如果有一项返回false,则停止遍历 every返回false;不写
 默认返回false
 array.every(function(item,index,arr) {
  })
 //对数组中每一项运行以下函数,该函数返回结果是true的项组成
 的新数组
 var arr = array.filter(function(item,index,arr) {
  });
 console.log(arr);  
  //遍历数组
array.forEach(function(item,index,arr){
 });
//对数组中每一项运行以下函数,返回该函数的结果组成的新数组
var arr = array.map(function(item,index,arr) {
      return "\"" + item + "\"";
 })
 //对数组中每一项运行以下函数,如果该函数对某一项返回true,则
 some返回true
var b =  array.some(function(item,index,arr) {
   if (item == "ww") {
       return true;
   }
    return false;
});

欢迎关注我的个人微信公众号,免费送计算机各种最新视频资源!你想象不到的精彩!


0.jpg
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • "use strict";function _classCallCheck(e,t){if(!(e instanc...
    久些阅读 6,161评论 0 2
  • 单例模式 适用场景:可能会在场景中使用到对象,但只有一个实例,加载时并不主动创建,需要时才创建 最常见的单例模式,...
    Obeing阅读 6,375评论 1 10
  • 工厂模式类似于现实生活中的工厂可以产生大量相似的商品,去做同样的事情,实现同样的效果;这时候需要使用工厂模式。简单...
    舟渔行舟阅读 12,384评论 2 17
  • Scala与Java的关系 Scala与Java的关系是非常紧密的!! 因为Scala是基于Java虚拟机,也就是...
    灯火gg阅读 8,824评论 1 24
  • 有次很意外的听到乔布斯在某学校演讲的视频,随着他演讲,下面有一行行学幕,当时很想记下来,但因各种原因没有记下这段话...
    走向阳光的自己阅读 4,059评论 0 7