热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

javascript基础学习2

数组vararrnewArray(2,1,5,6,7,4,9);vararr2Array(1,2,33); 省略new来创建数组vararr3[1,2,33]; 通过常量来

 数组

         var arr = new Array(2,1,5,6,7,4,9); 

         var arr2 = Array(1,2,"33"); //省略new来创建数组

         var arr3 = [1,2,"33"]; //通过常量来创建数组

         Math.random(); //0~1之间任意的数。

         for(var i in arr){document.write(arr[i]+" ");} //另一种遍历arr的方式。这个方法要比for循环效率高

        /* 

        1.栈结构:

            push()方法:从一口进,从同一个口出。特点:先进后出。功能:给数组末尾添加元素, 

                 alert(arr); 

                var aes = arr.push("ee","sdfs"); 

                 alert(aes); 返回值:添加完元素之后,数组的长度。

            pop()方法:去掉最后一个元素

                 var aes = arr.pop(); 

                alert(aes); 返回值:返回刚才去掉的最后一个元素。

            队列结构:从一头进,从另外一头出去,特点:先进先出

            shift()方法,从数组的头部去掉一个元素

            unshift()方法,从数组的头部插入元素

            concat();数组的合并,返回值,合并后的新数组,arr.concat(arr2);

            slice();剪切数组,返回值,剪切后的新数组,slice(1,3);去掉下标第二第四的元素,

            splice()splice(下标,length,元素);

                删除功能: splice(1,1); 去掉第二个长度1, var am = arr.splice(1,1); 这个返回值为删除的第二个元素,

                添加功能splice(1,0,"sdf");splice(1,0,"sdf","dsf"); 从第二个元素开始添加元素

                替换功能splice(1,1,"sdfsd"); 

            join();拼接符,将元素拼接成字符串, arr.join("+s"); 返回值,返回字符串

 

            reverse();数组的逆向排序

            sort();升序排序,默认是用字符串的asc ii编码表来排序的,而不是按照大小来排序的,

 

        2.二维数组

            1,2,3,4,5

            6,7,8,9,10

            

  var arr = [[],[],[],[],[]];
var count = 0;每个数组中的元素
var arr = [];
for(i=0;i<5;i++){var newArr = []
for(j=0;j<5;j++){newArr.push(++count);}
arr.push(newArr);
}
alert(arr.length);
//返回5
alert(arr[0]);//返回1,2,3,4,5,
for(i=0;i){
for(j=0;j<=i;j++){document.write(arr[i][j] + "&ensp");}
document.write(

);
}


 

        冒泡排序

           

  var arr4 = [9,4,8,6,7,2];
for(i = 0;i )
{
for(j = 0;j )
{
if(arr4[j] > arr4[j+1])比较前后两个数字是否符合交换条件
{
var tmp = arr4[j];
arr4[j]
= arr4[j+1];
arr4[j
+1] = tmp;
}
}
}
alert(arr4);

 


        选择排序

            

  var arr4 = [5,6,4,7,3,9];
for(i = 0;i )
{
for(j = i;j )
{
if(arr4[j] < arr4[i])
{
var tmp = arr4[i];
arr4[i]
= arr4[j];
arr4[j]
= tmp;
}
}
}
alert(arr4);

 


        变量函数中作用域

            

    var a = 10;
function show(){
a
=5;
}
show();
alert(a);
//返回5
var a = 10;
function show(a){
a
=5;
}
show(a);
alert(a);
//返回10,形参在函数调用结束后被释放
var arr = [1,2];
function show(arr){arr.push(3,4);}
alert(arr);
//返回1,2,3,4 数组是复合数据类型/引用数据类型,并不存储在函数中,存储在堆段,所有复合数据类型都是引用地址


 

        字符串的函数:必须在document.write中使用

             var str = "hello"; str.charAt(2); 下标返回l。 str[1]; 也可以,不能被赋值, str[1] = "x"; ,只能 str = "sdf"; 

            big();用大号字体显示,

            blink();用闪动字符串(ie不兼容)

            bold();使用粗体

            fixed();以打字机的文本显示,

            strike();使用删除线

            fontcolor();

            fontsize();

            link();链接

            sub();下标, document.write("hello".sub()); 

            sup();上标

            

            charCodeAt(下标);返回asc ii码值

            fromCharCode(asc ii 码值)

            concat();   


    var str = "1";
    
var str2 = "2";
    
var str3 = str.concat(str2);


 

        字符串的查找方法:

            indexOf();indexOf(子串,开始查找的下标),返回值,相同字符串第一次出现的位置,或者没有返回-1

            lastIndexOf();lastIndexOf(子串);相同字符串第后一次出现的位置,返回值,没有-1

            search();参数可以是正则表达式,i是忽略大小写,g代表全局匹配

                 var str = "Abcabcabc";str.search("abc"); 返回3,正则表达式/abc/i,返回0

        字符串替换:

            replace();replace(匹配字符串/正则表达式,"df");返回值,替换后的字符串,

            replace("are","sdf");特点,只能替换第一次找到的目标

            replace(/sf/g,"sdf");替换掉所有相同字符串

            substring(); substring(2,4); 截取下标2和3不包括4,返回值,生成的新字符串

            slice(); slice(-2); 截取最后两个字符。

            split();split(分隔符,生成的数组长度);返回一个数组

             var str = "this is it";var arr = str.split(" ",2); 长度两个的数组

            数组转换字符串arr.join("");返回一个字符串

            toLowCase();全小写

            toUpperCase();全大写


推荐阅读
  • 本题要求在一组数中反复取出两个数相加,并将结果放回数组中,最终求出最小的总加法代价。这是一个经典的哈夫曼编码问题,利用贪心算法可以有效地解决。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 鼠标悬停出现提示信息怎么做
    概述–提示:指启示,提起注意或给予提醒和解释。在excel中会经常用到给某个格子增加提醒信息,比如金额提示输入数值或最大长度值等等。设置方式也有多种,简单的,仅为单元格插入批注就可 ... [详细]
  • 探讨 HDU 1536 题目,即 S-Nim 游戏的博弈策略。通过 SG 函数分析游戏胜负的关键,并介绍如何编程实现解决方案。 ... [详细]
  • 深入理解ExtJS:从入门到精通
    本文详细介绍了ExtJS的功能及其在大型企业前端开发中的应用。通过实例和详细的文件结构解析,帮助初学者快速掌握ExtJS的核心概念,并提供实用技巧和最佳实践。 ... [详细]
  • 解决TensorFlow CPU版本安装中的依赖问题
    本文记录了在安装CPU版本的TensorFlow过程中遇到的依赖问题及解决方案,特别是numpy版本不匹配和动态链接库(DLL)错误。通过详细的步骤说明和专业建议,帮助读者顺利安装并使用TensorFlow。 ... [详细]
  • 探索新一代API文档工具,告别Swagger的繁琐
    对于后端开发者而言,编写和维护API文档既繁琐又不可或缺。本文将介绍一款全新的API文档工具,帮助团队更高效地协作,简化API文档生成流程。 ... [详细]
  • 本文探讨了在构建应用程序时,如何对不同类型的数据进行结构化设计。主要分为三类:全局配置、用户个人设置和用户关系链。每种类型的数据都有其独特的用途和应用场景,合理规划这些数据结构有助于提升用户体验和系统的可维护性。 ... [详细]
  • Linux中的yum安装软件
    yum俗称大黄狗作用:解决安装软件包的依赖关系当安装依赖关系的软件包时,会将依赖的软件包一起安装。本地yum:需要yum源,光驱挂载。yum源:(刚开始查看yum源中的内容就是上图 ... [详细]
  • 气象对比分析
    本文探讨了不同地区和时间段的天气模式,通过详细的图表和数据分析,揭示了气候变化的趋势及其对环境和社会的影响。 ... [详细]
  • 深入解析动态代理模式:23种设计模式之三
    在设计模式中,动态代理模式是应用最为广泛的一种代理模式。它允许我们在运行时动态创建代理对象,并在调用方法时进行增强处理。本文将详细介绍动态代理的实现机制及其应用场景。 ... [详细]
  • Python自动化测试入门:Selenium环境搭建
    本文详细介绍如何在Python环境中安装和配置Selenium,包括开发工具PyCharm的安装、Python环境的设置以及Selenium包的安装方法。此外,还提供了编写和运行第一个自动化测试脚本的步骤。 ... [详细]
  • 本文详细介绍如何在 iOS 7 环境下申请苹果开发者账号,涵盖从访问开发者网站到最终激活账号的完整流程。包括选择个人或企业账号类型、付款方式及注意事项等。 ... [详细]
  • 本文介绍了如何通过Java代码计算一个整数的位数,并展示了多个基础编程示例,包括求和、平均分计算、条件判断等。 ... [详细]
  • 本篇文章介绍如何将两个分别表示整数的链表进行相加,并生成一个新的链表。每个链表节点包含0到9的数值,如9-3-7和6-3相加得到1-0-0-0。通过反向处理链表、逐位相加并处理进位,最终再将结果链表反向,即可完成计算。 ... [详细]
author-avatar
mobiledu2502876293
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有