ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

javascrip如何创建二维数组 并解决数组问题(查找字母位置)

2020-04-18 12:01:17  阅读:198  来源: 互联网

标签:10 ++ javascrip 二维 查找 xianshi 数组


javascrip 如何创建二维数组+查找字母位置

你好WO SHI 七七卡卡 ^ _ ^

随机生成10X10大小的二维字符数组,显示内容后,查找字符’a’在二维数组第一次出现的位置,若没有则提示无。

今天我们来探讨一下如何用javascrip在二维数组中查找字母的位置
探讨前我们要先知道在 javascrip 中如何创建二维数组

一、如何创建二维数组 ?_?

0.0首先在我们要先知道,如何定义一个二维数组

我们在java中定义二维数组时很简单int a=[][] ,a=new int[2][4](在这只举两个例子)但在 javascrip中,却有一点点复杂。

例如, 我们先试着定义一个 4*3 的二维数组
0.1首先我们先创建一个数组

var a =new Array() ; 

0.2这是创建数组的第一步,创建一维数组,我们再定义一个 i j 作为元素中的个数

var i, j; 

0.3随后我们用 for 循环 ,做显示一维的长度,也就是有几行(4行)

for(i=0;i<4;i++){           
 } 

0.4我们在第一个for循环里创建二维数组

for(i=0;i<4;i++){  
    a[i]= new Array();         
 } 

0.5之后再从 for循环中再 定义二维数组的长度,也就是显示有多少列(3列)

 for(i=0;i<4;i++){
                a[i]= new Array();
               for(j=0;j<3;j++) { 
                a[i][j] = 10+Math.floor(Math.random() *40);
                }
            } 
其中`10+Math.floor(Math.random() *40)`中 10+ 是为了打印的时候变得整齐`*40`是     0-40之间的数

0.6随后我们再定义一个xianshi将二维数组打印出来

var xianshi=' ';
        for(i=0;i<4;i++){
            for(j=0;j<3;j++)  
                xianshi= xianshi+a[i][j]+',';
            xianshi=xianshi+'<br/>';   
            }
            document.getElementById("demo2").innerHTML=xianshi;

0.7 打开浏览器,看看显示的结果
在这里插入图片描述

二、 如何运用 javascrip 查找字母位置 ?_?

1.1 因为我们上面定义的二维数组是以数字的形式进行编译,那我们只需要将数字转化成字母就可以了。我们用到了 unicode编码

a[i][j] = String.fromCharCode(97 + Math.floor(Math.random() * 26));
//26个英文字母所以*26

(unicode编码的知识在这就不多说了,感兴趣的话可以自己查一查)

var xianshi = ' ';
var i, j;
for (i = 0; i < 10; i++)
        a[i] = new Array();

    for (i = 0; i < 10; i++)
        for (j = 0; j < 10; j++)
            a[i][j] = String.fromCharCode(97 + Math.floor(Math.random() * 26));

    for (i = 0; i < 10; i++) {
        for (j = 0; j < 10; j++)
            xianshi = xianshi + a[i][j] + ',';
        xianshi = xianshi + '<br/>';
    }
    document.getElementById("demo1").innerHTML = xianshi;

在这里插入图片描述
1.2 (我们就找a的位置吧)随后我们定义zhaodaole帮助我们判断第一个a在哪

var zhaodaole=0;

1.3既然是二维数组我们就要行和列一起开始找,用for循环的嵌套进行重复判断的动作,当我们如果检索到第一个 a 令zhaodaole=2;//可以等于任意一个数字
if 判断语句并用break跳出程序

for (i = 0; i < 10; i++) {
        for (j = 0; j < 10; j++)
           {
               if(a[i][j]=='a') zhaodaole=2; 
               if(zhaodaole==2) break;
           }
        if(zhaodaole==2)break;
    }

1.4 最后我们输出 i j 的值(从0开始)

document.getElementById("demo2").innerHTML = 'a的位置为:'+i+','+j;

2 完整代码:
在这里插入图片描述
这个代码运用了比较多的知识点,但还是可以解决的,今天我们学习了如何创建二维数组,如何查找字母(a)的位置,希望对你在学习javascrip的道路上提供一点点帮助。谢谢,

WO SHI 七七卡卡 ^ _ ^ 如果代码对你有帮助还希望 点赞+关注

标签:10,++,javascrip,二维,查找,xianshi,数组
来源: https://blog.csdn.net/qq_47018979/article/details/105568212

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有