方法1:
[js] view plain copy
Arrayprototypemethod1 = function(){
var arr[]; //定义一个临时数组
for(var i = 0; i < thislength; i++){ //循环遍历当前数组
//判断当前数组下标为i的元素是否已经保存到临时数组
//如果已保存,则跳过,否则将此元素保存到临时数组中
if(arr1indexOf(this[i]) == -1){
arrpush(this[i]);
}
}
return arr;
}
方法2:
[js] view plain copy
Arrayprototypemethod2 = function(){
var h{}; //定义一个hash表
var arr[]; //定义一个临时数组
for(var i = 0; i < thislength; i++){ //循环遍历当前数组
//对元素进行判断,看是否已经存在表中,如果存在则跳过,否则存入临时数组
if(!h[this[i]]){
//存入hash表
h[this[i]] = true;
//把当前数组元素存入到临时数组中
arrpush(this[i]);
}
}
return arr;
}
方法3:
[js] view plain copy
Arrayprototypemethod3 = function(){
//直接定义结果数组
var arr[this[0]];
for(var i = 1; i < thislength; i++){ //从数组第二项开始循环遍历此数组
//对元素进行判断:
//如果数组当前元素在此数组中第一次出现的位置不是i
//那么我们可以判断第i项元素是重复的,否则直接存入结果数组
if(thisindexOf(this[i]) == i){
arrpush(this[i]);
}
}
return arr;
}
方法4:
[js] view plain copy
Arrayprototypemethod4 = function(){
//将数组进行排序
thissort();
//定义结果数组
var arr[this[0]];
for(var i = 1; i < thislength; i++){ //从数组第二项开始循环遍历数组
//判断相邻两个元素是否相等,如果相等说明数据重复,否则将元素写入结果数组
if(this[i] !== arr[arrlength - 1]){
arrpush(this[i]);
}
}
return arr;
}
你是想获取a标签?documentgetElementById("href4");就可以,如果获取不到,有可能是你js有问题,把js其他贴出来看一看,或者试一下下面的代码:<a href="#" id="testa">test</a>
<script type="text/javascript">
windowonload=function(){
alert(documentgetElementById("testa"));
}
</script>
改成w=woffsetWidth;
js获取Html元素的实际宽度高度
第一种情况就是宽高都写在样式表里,就比如#div1{width:120px;}。这中情况通过#div1stylewidth拿不到宽度,而通过#div1offsetWidth才可以获取到宽度。
第二种情况就是宽和高是写在行内中,比如style="width:120px;",这中情况通过上述2个方法都能拿到宽度。
小结,因为idoffsetWidth和idoffsetHeight无视样式写在样式表还是行内,所以我们获取元素宽和高的时候最好用这2个属性。注意如果不是写在行内style中的属性都不能通过idstyleatrr来获取。
现在的前端制作很少直接把样式写style里了,都是写在样式表里。如果你要获取的样式没有相对应的(就像#div1stylewidth对 应#div1offsetWidth),就只能分别针对不用浏览器来获取样式表的属性了,可以试着搜索“JS 获取样式属性”之类的。
一、获取img标签的src属性值
var imgStr = "<p><img src='>
1概念(什么叫数组):
数组是一个可以存储一组或一系列相关数据的容器。
2数组元素(数组的内容)
是指存储在数组中并赋予唯一索引号(下标)的数据段。
数组元素的数据类型可以不相同。
通过下标或者索引号能获取到数组相对应得内容。
3作用:
为了解决大量相关数据的存储和使用的问题。
4:创建数组的方法:
格1:通过关键字new 创建数组
var arr=new Array(0,1,2,3)
格2:通过字面量创建数组(通过中括号创建数组)
var arr=[0,1,2,3];
不同点:
(1)创建方式和形式不同
(2)数组中如果是一个数字的话,就是一个值
eg:var arr=[4];这个数组中只有一个数字的话,就是一个数
var arr=new Arrary(4);这个数组中只有一个数字的话,表示分配的空间
5:获取数组的长度属性 length
6:instanceof 用于判断一个变量是否是某个对象的实例
var a=["静夜思","野草","忆江南","浣溪沙"];
var a=45;
alert(a instanceof Array);
7: new Array()对象方法
slice() 获取数组中的某段数组元素
(取值是以下标开始,0代表第一个值,从前往后算,-1代表最后一个值,从后往前算)
unshift() 在数组开头添加元素
push() 在数组末尾添加元素
shift() 删除数组中的第一个元素
pop() 删除数组中的最后一个元素
toString() 将数组转换为字符串
join() 将数组元素连接成字符串
concat() 多个数组连接成字符串
sort() 数组元素正排序
reverse() 数组元素反向排序
splice() 删除数组元素/替换数组元素
indexOf() 指定数组中元素首次出现的下标,找不到元素返回-1
8:多维数组输出
9:数组去重
10:数组排序
11:数组去重+排序
用js获取页面元素:
1、getElementById()
返回一个值 或者报错null
2、getElementsByName()
返回htmlcollection
3、getElementsByTagName()
返回htmlcollection
4、getElementsByClassName()
返回htmlcollection
var vlaue =documentgetElementByClassName("classname");
for(var i=0; i<valuelength; i++){
consolelog (value[i]value ); //对象属性
}
1、这个函数来自Rico,Longbill及Dnewcn修改。
2、说明: 传入参数一个,为元素的id值或元素本身,返回为元素的真实背景色值(字符串)。背景值均为16进制的值(原代码是是IE里面返回的是16进制的值,而Mozilla则是rgb值,Dnewcn将其修改为均返回16进制的值)。
3、代码如下:
<html><head>
<title>得到元素真实的背景颜色</title>
<style>
classname {background-color:#ff99dd;}
#div3 {background-color:#d8bfd8;}
div {background-color:#87cefa;border:1px solid #333333;margin:10px;padding:4px;}
body {background-color:#bed742;}
#div4 {background-color:transparent;}
</style>
</head>
<body>
<span style="text-align:center;font-size:20px;color:#ff7f50;width:100%;">得到元素真实的背景颜色 <font style="font-size:12px;">By <a href=
<div id='div1'>div1 直接通过div标签定义背景色(#87cefa)</div>
<div id='div2' class=classname>div2 通过class name定义背景色(#ff99dd)</div>
<div id='div3'>div3 通过id定义背景色(#d8bfd8)</div>
<div id='div4'>div4 这是一个透明的div,背景色应为上一个元素的颜色(#bed742)</div>
<button onclick="go()">getBg()</button>
<script>
function getBg(element)
{//author: Longbill (
)
//dnewcn修补
var rgbToHex=function(rgbarray,array){
if (rgbarraylength < 3) return false;
if (rgbarraylength == 4 && rgbarray[3] == 0 && !array) return 'transparent';
var hex = [];
for (var i = 0; i < 3; i++){
var bit = (rgbarray[i] - 0)toString(16);
hexpush((bitlength == 1) '0' + bit : bit);
}
return array hex : '#' + hexjoin('');
}
//---------------
if (typeof element == "string") element = documentgetElementById(element);
if (!element) return;
cssProperty = "backgroundColor";
mozillaEquivalentCSS = "background-color";
if (elementcurrentStyle)
var actualColor = elementcurrentStyle[cssProperty];
else
{
var cs = documentdefaultViewgetComputedStyle(element, null);
var actualColor = csgetPropertyValue(mozillaEquivalentCSS)match(/\d{1,3}/g);
//-----
actualColor = (actualColor) rgbToHex(actualColor) : "transparent";
}
if (actualColor == "transparent" && elementparentNode)
return argumentscallee(elementparentNode);
if (actualColor == null)
return "#ffffff";
else
return actualColor;
}
function go()
{
for(var i=1;i<=4;i++) eval("alert('div"+i+":'+getBg('div"+i+"'));");
}
</script>
</body>
</html>
方法有两种:
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中关于获取元素属性的方法(object.style.width)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)