IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> javascript高级03 -> 正文阅读

[JavaScript知识库]javascript高级03

2.4 Array(数组)?对象

数组对象是使用单独的变量名来存储一系列的值

2.4.1 数组的创建方式

1. new Array([参数]);

参数---一个数字--数组的存储空间

var arr1 = new Array();    // 没有指定存储空间的空数组
        //alert(arr1.length);

        var arr1 = new Array();    //装一个元素以后,有1个存储空间
        arr1[0] = 100;
        //alert(arr1.length);   //1

        var arr2 = new Array(4);   // 指定4个存储空间的空数组
        //alert(arr2.length);

2. new Array(value1,value2.....);

var myCars=new Array("Saab","Volvo","BMW");

3. ?[value1,value2....]

var myCars = ["Saab", "Volvo", "BMW"];

2.4.2数组赋值

1.先创建后赋值---需要下标【从0开始】

 var test1 = new Array(2);
        test1[0] = "zhangsan";
        test1[1] = "lisi";
        test1[2] = "wangwu";
        alert(test1.length);  //3

注意:new Array(4)指定数组空间情况

?1.赋值的时候可以超出指定的数据空间大小

?2.数据的个数在指定的数据空间大小内(包括等于),length属性是指定的数据空间大小

?3. 如果超过就表示数组中元素的个数

2.?定义加赋值

 var myCars = new Array("Saab", "Volvo", "BMW");
        var myCars = ["Saab", "Volvo", "BMW"];
下列创建数据赋值错误的是(1,2)
         var myCars1 = new Array("Saab", "Volvo", "BMW");
         var myCars2 = ["Saab", "Volvo", "BMW"];
         var myCars3 = new Array()["Saab", "Volvo", "BMW"];
         var myCars4 = new Array(3)["Saab", "Volvo", "BMW"]; 

2.4.3?数组取值---数组名称[小标]

2.4.4数组的length属性

length属性---数组元素的个数

new Array(4)指定数组空间的情况,数据的个数在指定的数据空间大小内(包括等于),length属性是指定的数据空间大小

如果超过就表示数组中元素的个数。

 var test1=new Array(4);
            test1[0]="zhangsan";
            test1[1]="lisisi";
            alert(test1.length);
            上面的代码的执行结果是(d)
            A  0  B 2  C 3  D 4 

2.4.5.数组的遍历---循环

 var myCars = ["Saab", "Volvo", "BMW"];
      for (var i = 0; i < myCars.length; i++) {
              alert(myCars[i]);
          } 
var myCars = ["Saab", "Volvo", "BMW"];
      for (var index in myCars) {
             alert(myCars[index]);
         } 

2.4.6.数组的常用方法

1. concat()??? 合并数组

var myCars = ["Saab", "Volvo", "BMW"];
        var test1 = ["zhangsan", "lisisi"];
        var newarray = myCars.concat(test1);
     alert(newarray.length);   //5

2. forEach()?? 数组每个元素都执行一次回调函数。

 var arr = ['zhangsan', 'lisi', 'wangwu', 'xiaoming'];
        arr.forEach(function (element) {
            alert(element);
        })

3.includes()?? 判断一个数组是否包含一个指定的值

var arr = ['zhangsan', 'lisi', 'wangwu', 'xiaoming'];
alert(arr.includes('xiaoming'));   //true

4. indexOf()? 搜索数组中的元素,并返回它所在的位置

 var arr = ['zhangsan', 'lisi', 'wangwu', 'xiaoming'];
 alert(arr.indexOf('xiaoming'));      //3

5. lastIndexOf()??? 搜索数组中的元素,并返回它最后出现的位置

   var arr = ['zhangsan', 'lisi', 'wangwu', 'xiaoming'];
  alert(arr.reverse());         //xiaoming,wangwu,lisi,zhangsan

6. join()? 把数组的所有元素放入一个字符串。

var arr = ['zhangsan', 'lisi', 'wangwu', 'xiaoming'];
        var str = arr.join(";");
        alert(str);    //zhangsan;lisi;wangwu;xiaoming     转化为字符串

7. push() 向数组的末尾添加一个或更多元素,并返回新的长度

var arr = ['zhangsan', 'lisi', 'wangwu', 'xiaoming'];
        arr.push('xiaohong')
        alert(arr);              //zhangsan,lisi,wangwu,xiaoming,xiaohong
       alert(arr.length);     //5

8. unshift()??? 向数组的开头添加一个或更多元素,并返回新的长度

var arr = ['zhangsan', 'lisi', 'wangwu', 'xiaoming'];
        arr.unshift('xiaohong')
   alert(arr);              //xiaohong,zhangsan,lisi,wangwu,xiaoming
   alert(arr.length);      //5

9. shift() 删除并返回数组的第一个元素

var arr = ['zhangsan', 'lisi', 'wangwu', 'xiaoming'];
alert(arr.shift());   //zhangsan

10. pop()?????? 删除数组的最后一个元素并返回删除的元素

var arr = ['zhangsan', 'lisi', 'wangwu', 'xiaoming'];
        alert(arr.pop());       //xiaoming

11. reverse()? 反转数组的元素顺序

 var arr = ['zhangsan', 'lisi', 'wangwu', 'xiaoming'];
   alert(arr.reverse());         //xiaoming,wangwu,lisi,zhangsan
或者:
         arr.reverse();
        arr.forEach(function (element) {
            alert(element);
        })

12. slice(开始下标,结束下标)??? 选取数组的一部分,并返回一个新数组。

   var arr = ['zhangsan', 'lisi', 'wangwu', 'xiaoming'];
            var test = arr.slice(0, 2);
            test.forEach(function (element) {
                alert(element);
            })                      //从0开始,到2结束,不包括结尾

13. sort()?????? 对数组的元素进行排序

var numarr = [123, 234, 22, 1224];
        numarr.sort(function (a, b) { return a - b; });//升序
        numarr.forEach(function (element) {
            alert(element);
        })

var numarr = [123, 234, 22, 1224];
        numarr.sort(function (a, b) { return b - a; });//降序
        numarr.forEach(function (element) {
            alert(element);
        })
 var arr = ['zhangsan', 'lisi', 'wangwu', 'xiaoming'];
         arr.sort();   //升序  首字母1排序
         arr.forEach(function (element) {
             alert(element);
         }) 

14. toString() 把数组转换为字符串,并返回结果

 var arr = ['zhangsan', 'lisi', 'wangwu', 'xiaoming'];
        var str = arr.toString();
        alert(str);   //zhangsan,lisi,wangwu,xiaoming

2.5 Boolean(布尔)?对象

2.5.1.创建方式(2种)

var boo1 = false;
      alert(typeof boo1);  // 类型不同:boolean型
var boo2 = new Boolean(true / false);
        alert(typeof boo2);   //类型不同:object型

2.5.2.Boolean 对象方法:

toString()????? 把布尔值转换为字符串,并返回结果。

 var str1 = boo1.toString();
      alert(typeof str1);    //string

valueOf()?????? 返回 Boolean 对象的原始值

var boo3 = boo2.valueOf();
        alert(typeof boo3);      //boolean

2.5.3.注意事项

1.数字可以充当判断值 0==false? 非0数字---true

 var num1 = 0;    false
          if (num1) {
  
          } else {
              alert(false);
          }
  

  var num2 = 10;
         if (num2) {           true
             alert(true)
         } else {
             alert(false);
         }
 

2.字符串充当判断值?????? 空字符串==false? 非空字符串==true

var str1 = '';
          if (str1) {               false
             alert(true);
            } else {
                alert(false);
            }
   
        var str2 = "hello";
           if (str2) {                   true
               alert(true);
           }

3. null充当判断?????????? null==false???? !null==true

  var test1 = null;
           if (test1) {                 false
               alert(true);
           } else {
               alert(false);
           }
    
         var test2 = !null;
         if (test2) {                  true
             alert(true);
         } else {
             alert(false);
         }
 

2.6Math(算数)?对象

调用一些数学运算相关的属性和方法

不需要创建对象, Math就是对象

2.6.1? Math对象 属性:

1. E 返回算术常量 e,即自然对数的底数(约等于2.718)。自然常数,为数学中一个常数,是一个无限不循环小数

alert(Math.E);     //2.718281828459045

2. PI 返回圆周率(约等于3.14159)。

alert(Math.PI);      //3.141592653589793

2.6.2 Math对象 方法:

1. ?.max(x,y,z,...,n)

.max(x,y,z,...,n) 返回 x,y,z,...,n 中的最高值。
        alert(Math.max(12, 3, 5, 123));   //123

2. ?.min(x,y,z,...,n)

.min(x,y,z,...,n) 返回 x,y,z,...,n中的最低值。/min(x,y,z,...,n)   返回 x,y,z,...,n中的最低值。
        alert(Math.min(12, 3, 5, 123));     //3

3. round(x)??? 四舍五入

正数--round(x)  四舍五入。
负数--round(x)无限接近的整数
       alert(Math.round(12.3));   // 12
       alert(Math.round(-12.2));   //-12
       alert(Math.round(-12.8));   //-13

2.7 RegExp?对象

正则表达式描述了字符的模式对象,实际上就是一个用于查找/匹配字符串的规则

正则表达匹配字符

1.?RegExp对象

2.String中的match可以检索正则表达?--?不常用

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-09-07 10:43:35  更:2021-09-07 10:45:39 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 16:48:40-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码