javascript 复习重点(两半天)

1.遍历数组和键值对

//数组

var arr = [2,3,4,"abc",true]; // 字面值
   for(var item in arr) {
    console.log(arr[item]);
   }

//键值对

var kv = {
    "key1":"赵晓虎",
    "key2":"牛亮亮"
   };
   for(var key in kv) {
    console.log(kv[key]);
   }


2.argument参数

javascript函数体内,arguments像数组(并不是真的数组,是一个Arguments对象, 再次强调)一样,有length属性,可以代表传给函数的参数的个数。

arguments对象的长度是由实参个数而不是形参个数决定的。形参是函数内部重新开辟内存空间存储的变量,但是其与arguments对象内存空间并不重叠。对于arguments和值都存在的情况下,两者值是同步的,但是针对其中一个无值的情况下,对于此无值的情形值不会得以同步。

argument的使用

<script type="text/javascript">
		
			var func = function(n1,n2) {
				var arr = arguments; 
				
				alert(arr[0] === n1);
				alert(arr[1] === n2);
				
				
				for(var i = 0; i < arr.length; i++) {
					console.log(arr[i]);
				}
			};
			
			func(1,2,3,4,"测试", true);
			
			
			var foo = function() {
				switch(arguments.length) {
					case 0: func1(); break;
					case 1: func2(); break;
					// ...
					default: funcN(); break;
				}
			};
	
			function f(v1) {
				alert(v1);
			}
			function f(v1, v2) {
				alert(v1 + ", " + v2);
			}
			
			f(1);
		</script>


3.Function对象(动态函数)

1.语法
  var func = new Function(...);
  // Function参数中最后一个参数是方法体,前面的参数都是该方法的参数
  // 参数类型都是字符串
  var getMax = function(n1, n2) {
   return n1 > n2 ? n1 : n2;
  };
  //
  var func = new Function("n1", "n2", "return n1 > n2 ? n1 : n2;");

2.调用方法

<script type="text/javascript">
			var func = function() {
				// 获得页面中id为txt的元素
				// value属性获得其中的值
				var txt = document.getElementById("txt").value;
				// new Function(txt)();
				var func1 = new Function(txt);
				func1();
			};
		</script>
<textarea id="txt"></textarea>
  <br />
  <input type="button" value="点击执行" οnclick="func();"/>




4.对象json

json是一种简单的数据格式,比xml更轻巧。JSON是JavaScript原生格式,这意味着在JavaScript中处理JSON数据不需要任何特殊的API或工具包。 

json可以将javascript对象中表示的一组数据转换为字符串(伪对象),然后就可以在函数之间轻松地传递这个字符串,

或者在异步应用程序中将字符串从web客户端传递给服务端程序。

使用

	<script type="text/javascript">
			var o = {
				"name":"赵晓虎123",
				sex:"女",
				age:19,
				"sayHello":function() {
					// jkformat("{0}{1}", 11, 22);
					// alert(name);
					alert("你好,我是" 
						+ this.name 
						+ ",我今年" 
						+ this.age
						+ "岁了,我是"
						+ this.sex
						+ "的");
				}
			};
			/*
			alert(o.name);
			alert(o.sex);
			alert(o.age);
			o.sayHello();


5,js中的对象

js中的对象就是键值对。

函数是一等公民。使用
  var foo = function() {};
  
 键值对,值可以是数字、字符串或布尔类型的数据,好比字段
 值也可以是函数,好比方法,键就是变量名或函数名
 
 // 对象的字面值(JSON)
 var o = {}; // Object对象
 var o = {
  name:"赵晓虎",
  sex:"男",
  age:19,
  sayHello:function() {
   alert("你好")
  }
 };



6.构造方法与对象

var o1 = {};
  var o2 = new Object(); // Object的构造方法
  // js中所有的对象类型"来自于"object
  构造方法就是普通方法,调用的时候使用new就可以将其作为构造方法来使用了, js没有类,直接使用构造方法创建对象

实现步骤,创建一个函数,new这个函数

添加成员,在构造方法中使用this.成员进行添加,js支持动态成员, 如果一个对象没有定义Memeber的属性,但是现在希望她有
  只需要用"对象.Member=值",那么就可以给这个对象创建该成员了。





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值