js中如何取得数组中相同元素的下标

js中如何取得数组中相同元素的下标,第1张

function searchKeys(needle, haystack)

{

    var result = [];

    for (i in haystack)

{

if (haystack[i] == needle)

{

    resultpush(i);

}

}

    return result;

}

var array = [1,2,1,3,1,4,1,5,1,1];

var val = 1;

var result = searchKeys(val, array);

alert(result);

这里写了一个方法,第一个参数是所要求果的值,第二个参数是对应的数组,函数返回的结果就是在这个数组中有相同元素的坐标。

上面是已知元素进行查找,下面这个是对数组所有元素进行查找

var arr = ['1', '2', '3', '4', '5', '6', '6', '7', '8', '1', '1', '1'];

var list = [];

for (var i = 0; i < arrlength; i++)

{

var hasRead = false;

for (var k = 0; k < listlength; k++)

{

if (i == list[k])

{

hasRead = true;

}

}

if (hasRead) { break;}

var _index = i, haveSame = false;

for (var j = i + 1; j < arrlength; j++)

{

if (arr[i] ==arr[j])

{

listpush(j);

_index += "," + j;

haveSame = true;

}

}

if (haveSame)

{

alert("数组中值为"+arr[i]+"相同元素的下标为"+_index);

}

}

这个是对所有的数组元素遍历,查出所有的相同的元素以及下标

var a=new Array({key:'1',value:"a"},{key:'2',value:"b"},{key:'3',value:"c"},{key:'4',value:"d"});

下面写了个例题

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 40 Transitional//EN">

<HTML>

<HEAD>

<TITLE> New Document </TITLE>

<META NAME="Generator" CONTENT="EditPlus">

<META NAME="Author" CONTENT="">

<META name="keywords" content="元素,脚本语言,下标,对象,的是">

<META name="description" content="function searchKeys(needle, haystack){    var result = [];    for (i in haystack){if (haystack[i] == needle){    resultp">

</HEAD>

<BODY>

<SCRIPT LANGUAGE="JavaScript">

<!--

function Map( ){

thiselements = new Array();

thisinit = function( _e ){

thiselements = _e ;

}

thisput = function(key, value) {

// 加入元素

thiselementspush({key: key, value:value});

}

thisgetByValue = function( _value) {

// 取出对应value

try{

for (i = 0; i < thiselementslength; i++) {

if (thiselements[i]value == _value) {

return thiselements[i]key;

}

}

}catch(e) {

return null;

}

}

thisgetByKey = function( _key) {

// 取出对应key

try{

for (i = 0; i < thiselementslength; i++) {

if (thiselements[i]key == _key) {

return thiselements[i]value;

}

}

var value = "b";

var map = new Map();

mapinit( a );

alert( mapgetByValue( value ) );

//-->

</SCRIPT>

</BODY>

</HTML>

jQuery 遍历的 eq() 方法将匹配元素集缩减值指定 index 上的一个,index表示元素的位置(最小为 0)。所以获取Table第 i 行第 j 列的内容可用如下代码

$("table")find("tr")eq(i-1)find("td")eq(j-1)text(); // 注意-1是因为index从0开始计数

实例

创建Html元素

<div class="box">

<span>填写行列数,点击按钮后获取对应位置的数值:</span>

<div class="content">

<table>

<tr><td>1</td><td>2</td><td>3</td></tr>

<tr><td>4</td><td>5</td><td>6</td></tr>

<tr><td>7</td><td>8</td><td>9</td></tr>

</table>

</div>

第<input type="text" name="row">行,第<input type="text" name="col">列<input type="button" class="btn" value="确定">

</div>

添加css样式

divbox{width:300px;height:250px;padding:10px 20px;border:4px dashed #ccc;}

divbox>span{color:#999;font-style:italic;}

divcontent{width:250px;height:100px;margin:10px 0;padding:5px 20px;border:2px solid #ff6666;}

input[type='text']{width:35px;height:30px;border:1px solid #99ccff;}

input[type='button']{width:100px;height:30px;margin:10px;border:2px solid #ebbcbe;}

selected{background:#99ccff;}

table{border-collapse:collapse;}

td{padding:5px 10px;border:1px solid green;}

编写jquery代码

$(function(){

$("input:button")click(function() {

row = $("input[name='row']")val() - 1;

col = $("input[name='col']")val() - 1;

val = $("table")find("tr")eq(row)find("td")eq(col)text();

alert(val);

});

})

有好多种方法,比如:

documentgetElementById("xxx");是通过元素Id来取得元素,这是获取单一元素的最快途径。

documentgetElementsByName("xxx");则可以根据元素Name来取得一系列的元素,因为name不同意,这样需要通过[index]来取得相对应的元素。

其他还有不少,建议查阅一下资料,以上是用得比较多的。

方法有两种:

1、通过jquery的方式,使用id选择器方式获取节点,然后获取值。

2、通过原生的dom方式,获取id的值。

每一个HTML元素都使用id来进行一个标注,随后可以通过documentgetElementById(“ID名称”)取得指定的ID元素对象,取得元素对象之后就可以对其进行 *** 作。

但是documentgetElementById()只能取得一个元素信息。

documentgetElementById(“id”) 获取到的是整个对象。

documentgetELementById(“id”)innerHTML;才可以获取到其中的内容。

documentgetElementById('con')获取的只是P标签,返回的[objectHTMLParagraphElement]。

documentgetElementById('con')innerHTML获取的才是P标签里的内容,返回的是JavaScript。

扩展资料:

JavaScript脚本语言具有以下特点:

(1)脚本语言。JavaScript是一种解释型的脚本语言,C、C++等语言先编译后执行,而JavaScript是在程序的运行过程中逐行进行解释。

(2)基于对象。JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。

(3)简单。JavaScript语言中采用的是弱类型的变量类型,对使用的数据类型未做出严格的要求,是基于Java基本语句和控制的脚本语言,其设计简单紧凑。

(4)动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务器就可以对用户的输入做出响应。在访问一个网页时,鼠标在网页中进行鼠标点击或上下移、窗口移动等 *** 作JavaScript都可直接对这些事件给出相应的响应。

(5)跨平台性。JavaScript脚本语言不依赖于 *** 作系统,仅需要浏览器的支持。因此一个JavaScript脚本在编写后可以带到任意机器上使用,前提上机器上的浏览器支持JavaScript脚本语言,目前JavaScript已被大多数的浏览器所支持。

不同于服务器端脚本语言,例如PHP与ASP,JavaScript主要被作为客户端脚本语言在用户的浏览器上运行,不需要服务器的支持。所以在早期程序员比较青睐于JavaScript以减少对服务器的负担,而与此同时也带来另一个问题:安全性。

而随着服务器的强壮,虽然程序员更喜欢运行于服务端的脚本以保证安全,但JavaScript仍然以其跨平台、容易上手等优势大行其道。

同时,有些特殊功能(如AJAX)必须依赖Javascript在客户端进行支持。随着引擎如V8和框架如Nodejs的发展,及其事件驱动及异步IO等特性,JavaScript逐渐被用来编写服务器端程序。

参考资料来源:百度百科-javascript

以上就是关于js中如何取得数组中相同元素的下标全部的内容,包括:js中如何取得数组中相同元素的下标、js怎么获取数组中元素的位置、js怎么获取表格中指定行某一列的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10158936.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存