js的hasownproperty使用示例

 我们在js中可能经常会用到for in来遍历对象中的属性,当然for in中得到的属性,只能是可枚举的属性,for in的时候,它会把对象的属性(包括原型的属性)遍历一遍,看面看示例就明白了

例如:
有这么一段代码:
 
 代码如下:
var array = [];
array.push(1);
array.push(2);
array.push(3);
for(var i in array) {
console.log(i+":"+array[i]);
}
 
此时会输出什么呢?当然是0:1 1:2 2:3
但是如果在for in之前加上Array.prototype.say = "hello";
再次运行会输出什么呢?
复制代码 代码如下:
0:1 1:2 2:3 say:hello
 
看到了吧,这个时候,它会输出原型的属性
在很多时候,我们不需要遍历它原型的属性,还有一个原因就是,我们现在用到的对象,我们不能保证,其他开发人员,有没有,在它的原型上加一些属性呢?所以呢,我们就过滤一下我们对象的属性吧,这个时候就用到了hasOwnProperty方法,如下:
复制代码 代码如下:
for(var i in array){
if(array.hasOwnProperty(i)) {
console.log(i+":"+array[i]);
}
}
 
再想想现在会输出什么呢?当然是0:1 1:2 2:3啦。

时间: 2025-01-21 09:05:13

js的hasownproperty使用示例的相关文章

js的hasownproperty使用示例_基础知识

例如:有这么一段代码: 复制代码 代码如下: var array = [];array.push(1);array.push(2);array.push(3);for(var i in array) {console.log(i+":"+array[i]);} 此时会输出什么呢?当然是0:1 1:2 2:3但是如果在for in之前加上Array.prototype.say = "hello";再次运行会输出什么呢? 复制代码 代码如下: 0:1 1:2 2:3 s

JS控制图片翻转示例代码

 本篇文章主要介绍了JS控制图片翻转示例代码(兼容firefox,ie,chrome) 需要的朋友可以过来参考下,希望对大家有所帮助  代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  <html xmlns="http://www.

js获取当前路径的示例代码

 本篇文章主要是对js获取当前路径的示例代码进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 <script type="text/javascript">     thisURL = document.URL;  thisHREF = document.location.href;  thisSLoc = self.location.href;  thisDLoc = document.location;  strwrite = " thisURL: [

node.js [superAgent] 请求使用示例

 这篇文章主要介绍了node.js [superAgent] 请求使用示例,分别给大家汇总了post请求.get请求.delete请求和put请求的示例,推荐给大家,希望大家能够喜欢.     post请求:   代码如下: request.post('/api/pet') .end(function(resp,err){ if (resp.body.status===200) { alert('yay got ' + JSON.stringify(res.body)); } else { re

使用js显示当前时间示例

 这篇文章主要介绍了使用js显示当前时间示例,这里也用到了jquery,让得把它也要引入到页面中 页面前台显示    代码如下: <span id="clock" style="font-size:14px;"></span>     js脚本    代码如下: $(document).ready(function () { //第一种 showTime(); //第二种 var clock = new Clock(); clock.disp

js特殊字符过滤的示例代码

 本篇文章主要是对js特殊字符过滤的示例代码进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助  代码如下: //匹配中文 数字 字母 下划线         var checkInput = function (str) {             var pattern =var pattern = /^[wu4e00-u9fa5]+$/gi;             if(pattern.test(c))             {                 return fa

JS基础教程——正则表达式示例(推荐)

正则表达式的() [] {}有不同的意思. () 是为了提取匹配的字符串.表达式中有几个()就有几个相应的匹配字符串. (\s*)表示连续空格的字符串. []是定义匹配的字符范围.比如 [a-zA-Z0-9] 表示相应位置的字符要匹配英文字符和数字.[\s*]表示空格或者*号. {}一般用来表示匹配的长度,比如 \s{3} 表示匹配三个空格,\s[1,3]表示匹配一到三个空格. (0-9) 匹配 '0-9′ 本身. [0-9]* 匹配数字(注意后面有 *,可以为空)[0-9]+ 匹配数字(注意后

JS创建对象的写法示例_javascript技巧

本文实例讲述了JS创建对象的写法.分享给大家供大家参考,具体如下: 写法1: <script> var database = function () { function add(){ console.info("add"); } function queryAll(){ console.info("queryAll"); } /** 带参数 */ function delById(id){ console.info("delById:&quo

js charAt的使用示例

 这篇文章主要介绍了js charAt的使用方法,需要的朋友可以参考下 eg:   代码如下: <html>  <body>    <script type="text/javascript">    var str="Hello world!"  document.write("The first character is: " + str.charAt(0) + "<br />&quo