Javascript对象学习3 - 小知识

简介:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<!DOCTYPE HTML>
<html>
<head>
     <meta charset= "UTF-8" >
     <title></title>
</head>
<body>
                                                                                
     <script>
         ( function (){
             /**
              * 1.取得JavaScript对象属性的两种方法
              */
/*          var user = {
                 name : "tom",
                 age : 20
             };
             //方法一:
             alert("name1: " + user.name);
             //方法二:
             alert("name2: " + user["name"]); //此种方法可以拼接字符串用
             var n = "na" + "m" + "e";
             alert("name3: " + user[n]);
*/
             function  Person(){}
             var  p =  new  Person();
             p.age = 10;
             p.name =  "tom" ;
             var  b = p ;
             b.name =  "jerry" ;
             alert( "p : "  + p.age +  ", "  + p.name);  // 10,jerry
             alert( "b : "  + b.age +  ", "  + b.name);  // 10,jerry
                                                                                        
         })();
     </script>
</body>
</html>

200243990.png

=========================================================================================


1
2
3
4
5
6
7
8
9
10
11
12
/**
      * this的用法:
      * 那个对象实例调用this所在的函数,那么this就代表那个对象实例。
      */
     function  Person() {
         this .show =  function () {
             alert( this .name);
         }
     }
     var  p =  new  Person();
     p.name =  "tom" ;
     p.show();

093750443.png

1
2
3
4
5
6
7
<script>
     function  test1() {
         alert( this .val);
     }
     var  val = 90;
     test1();  // 等价于 window.test1(); window对象,要是放在function({...})();则不行的。
</script>



=====================================================================================

1
2
3
4
5
6
7
function  Person() {
     this .name =  "tom" ;
     this .age = 21;
}
var  p1 =  new  Person();
var  p2 =  new  Person();
alert(p1.name +  " --- "  + p1.name);  // tom --- tom


095136656.png


======================================================================================


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<!doctype html>
<html>
<head>
     <meta charset= "UTF-8" >
     <title>Document</title>
</head>
<body>
                  
     <script type= "text/javascript" >
         ( function (){
             /**
              * 1.我们给Javascript的类(原型对象)添加方法
              */
             var  num =  new  Number(10);  //表示用构造方法声明一个变量为10的变量,相当于 var num = 10;
             //给Number对象添加一个方法,所有的Number对象的实例都可以使用
             Number.prototype.add =  function (param) {
                 return  this +param;  //返回调用对象和参数的和
             }
             //使用
             alert(num.add(20).add(30));  //返回60
             var  num2 = 60;
             alert(num2.add(90));  //150
             /**
              * 2.给Array对象添加一个方法find(param),找到数组中含有param的第一个元素,并返回下标值。找不到返回-1
              */
             Array.prototype.find =  function (param) {
                 //遍历数组,this
                 for  ( var  i = 0; i <  this .length; i++) {
                     if (param ==  this [i]) {
                         return  i;
                     }
                     return  -1;
                 };
             }
             //调用
             var  array =  new  Array();
             array[0] =  "Tom" ;
             array[1] =  "Jerry" ;
             array[2] =  "Alax" ;
             alert(array.find( "Tom" ));  //0
             alert(array.find( "Xiweiyuan" ));  //-1
         })();
     </script>
</body>
</html>


=======================================================================================


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
             /**
              * 3.Javascript中并没有方法的重载一说!而以重名方法的最后一个为主。
              */
/*          function test1(param1) {
                 alert(param1);
             }
             //所有调用test1方法时都是以这个方法为主
             function test1(param1,param2) {
                 alert(param1 + " --- " + param2);
             }
             //调用
             test1(23); //23 --- undefined
             test1(23,24);// 23 --- 24
             test1(23,24,23); // 23 --- 24*/
/*          function test2(param1,param2) {
                 return param1 + param2;
             }
             //所有调用test2方法时都是以这个方法为主
             function test2(param1,param2,param3) {
                 return param1 + param2 + param3;
             }
             alert(test2(2,3)); //NaN
             alert(test2(2,3,4)); //9
             alert(test2(2,3,4,5)); //9*/
             function  test3() {
                 var  result = 0;
                 for  ( var  i = 0; i < arguments.length; i++) {
                     result += arguments[i];
                 };
                 return  result;
             }
             alert(test3(2,3));  //5
             alert(test3(2,3,4));  //9
             alert(test3(2,3,4,5));  //14







     本文转自韩立伟 51CTO博客,原文链接:http://blog.51cto.com/hanchaohan/1309891 ,如需转载请自行联系原作者


相关文章
|
2天前
|
JavaScript Java 测试技术
用于日语词汇学习的微信小程序+springboot+vue.js附带文章和源代码设计说明文档ppt
用于日语词汇学习的微信小程序+springboot+vue.js附带文章和源代码设计说明文档ppt
11 0
|
2天前
|
JavaScript Java 测试技术
基于小程序的英语学习交流平台+springboot+vue.js附带文章和源代码设计说明文档ppt
基于小程序的英语学习交流平台+springboot+vue.js附带文章和源代码设计说明文档ppt
12 2
|
2天前
|
JavaScript Java 测试技术
基于小程序的移动学习平台+springboot+vue.js附带文章和源代码说明文档ppt
基于小程序的移动学习平台+springboot+vue.js附带文章和源代码说明文档ppt
9 0
|
1天前
|
JavaScript Java 测试技术
基于微信小程序的在线学习系统+springboot+vue.js附带文章和源代码设计说明文档ppt
基于微信小程序的在线学习系统+springboot+vue.js附带文章和源代码设计说明文档ppt
7 0
|
2天前
|
JavaScript Java 测试技术
学习自律养成小程序+springboot+vue.js附带文章和源代码设计说明文档ppt
学习自律养成小程序+springboot+vue.js附带文章和源代码设计说明文档ppt
10 0
|
2天前
|
JavaScript Java 测试技术
基于小程序的绘画学习平台+springboot+vue.js附带文章和源代码设计说明文档ppt
基于小程序的绘画学习平台+springboot+vue.js附带文章和源代码设计说明文档ppt
14 0
|
3天前
|
JavaScript 前端开发 API
如何学习React.js?
【5月更文挑战第27天】如何学习React.js?
25 14
|
6天前
|
XML JavaScript 前端开发
JavaScript简介&引入方式(JavaScript基础语法、JavaScript对象、BOM、DOM、事件监听)
JavaScript简介&引入方式(JavaScript基础语法、JavaScript对象、BOM、DOM、事件监听)
7 2
|
7天前
|
Web App开发 JavaScript 前端开发
JavaScript 中的 Range 和 Selection 对象
JavaScript 中的 `Range` 和 `Selection` 对象用于处理文本选择。`Range` 表示文档中选定的区域,而 `Selection` 表示用户选择的文本或光标位置。`Range` 可以创建并设置于任何元素或文本,具有多个属性(如 `startContainer`, `endContainer`, `collapsed`)和方法(如 `cloneContents`, `deleteContents`)。`Selection` 提供了获取和操作用户选择的方法,如 `anchorNode`, `focusNode` 和 `addRange`。两者在所有现代浏览器中基本兼容。
5 1
JavaScript 中的 Range 和 Selection 对象
|
7天前
|
JavaScript
学习Node.js入门范例
然后,cmd中运行命令node E:/Test/server.js
10 2