日期:2014-05-16  浏览次数:20459 次

关于js中基本类型和引用类型传参
   //对于基本类型js参数传的是值
    var a = 5;
	function (a) {
	   a = 10;
	}
	alert(a);//5

   //对于引用类型,js 参数传地址
    var arr = ['a'];
	function put(arr){
	  arr.push('b');
	}
	put(arr);
	alert(arr)//a,b

?

js数据类型如下【转】:

js数据类型

1)基本类型
---数字,采用IEEE754标准定义的64位浮点格式.
特殊数值常量:
Infinity 无穷大的特殊值
NaN 非数字值
Number.MAX_VALUE 可表示的最大数字
Number.MIN_VALUE 可表示的最小数字
Number.NaN 非数字值
Number.POSITIVE_INFINITY 正无穷大
Number.NEGATIVE_INFINITY 负无穷大
把数字转为字符串6种方式
var n = 1.23456;
var n_as_str = n+"";
String(n);
n.toString(x); //x=2,binary; x=8, octonay; x=16,hexadecimal.if empty,decimal
n.toFixed(x); //小数点后位数
n.toExponential(x); //显示指数形式,x表示小数位
n.toPrecision(x); //若n位数>x时显示为指数,x表示数字的精度
---字符串
字符串转为数字
在数字环境,自动转换为数字,
var num = "2" * "3"; //num = 6
var num = str_val - 0;
var num = Number(str_val); //以10为基数的数字有效,允许开头和结尾的空白
parseInt(str)
parseInt(str,radix) //the same with java
parseFloat(str)
---布尔
显式转换的方法
var x_as_boolean = Boolean(x);
var x_as_boolean = !!x;
---null
表示"无值".
对象转换:布尔环境式时,非空对象为false;字符串环境时"null";数字环境时0;
---undefined
使用未声明的变量时,或使用声明但没有赋值的变量时,或使用不存在的对象属性时,返回
undefined.
对象转换:布尔环境式时,非空对象为false;字符串环境时"undefined";数字环境时NaN;
与null区别:
null是关键字,undefined不是.(ECMAScript v3定义了undefined的全局变量,初始值是undefined)

<html>
  <head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
	<title>null and undefined</title>
  </head>

  <body>
	<p>比较null与undefined</p>

	<script>
	  var undef; 
	  document.write("布尔环境: ")
	  document.write(undef==null);      //true
	  document.write("<br/>");
	  document.write("字苻串环境: ")
	  document.write("".undef);         //undefined
	  document.write("<br/>");
	  document.write("数字环境: ")
	  document.write(1+undef);          //NaN
	  document.write("<br/>");

	  document.write("undef===null: ")
	  document.writeln(undef===null);     /