JavaScript特性总结
1.js不支持重载,因为js里的函数都是一个对象,js里有个隐含对象Function,所有的js函数都是一个Function类型的对象。比如:
Java代码
function add(number)
{
alert("hello");
}
function add(number)
{
alert("hello");
}
等价于
Java代码
var add = new Function("number","alert('hello');");
var add = new Function("number","alert('hello');");
由于js里每一个函数里都隐含一个对象叫arguments,该arguments是一个数组,通过arguments可以获得到实际传递参数的个数(arguments.length)及实际传递参数的值(arguments[0],arguments[1]...)
所以可以通过arguments对象来模拟重载,如下:
Java代码
function add()
{
if(arguments.length == 1)
{
alert(arguments[0] + 10);
}
if(arguments.length == 2)
{
alert(arguments[0] + arguments[1] + 10);
}
}
}
add(5);
add(5,1);
function add()
{
if(arguments.length == 1)
{
alert(arguments[0] + 10);
}
if(arguments.length == 2)
{
alert(arguments[0] + arguments[1] + 10);
}
}
}
add(5);
add(5,1);
2.每个函数的名字都有一个属性叫length,“属性名.length ”获得该函数能接受参数的个数。
如:
Java代码
function a1()
{
}
function a2(number)
{
}
 
相关文档:
function urlencode( str ) {
// http://kevin.vanzonneveld.net
// + original by: Philip Peterson
// + improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
// * example 1: urlencode('Kevin van Zonneveld!');
// * returns 1: 'Kevin+van+Zonneveld%21'
&nb ......
大家可能都遇到过在写javascirpt代码时传递中文,在后台取到时发现是乱码,这里把我今天做的方法写出来,希望对大家以后有用!
方法(一):
html页面:
function testOne() {
var url = "testOne_test.do?expr="+你好;
location = encodeURI(url);
}
后台java代码:
String expr = ne ......
/*
* JavaScript对象就是一组属性(方法)的集合
* 在该语言中如果变量名或方法名不符合声明规范,
* 则一定得用方括号“ [] ”引用它
*
*/
/**
* <1.>该语句声明了一个class1类,class1相当于构造方法,又叫构造器
* 也可说声明了一个class1方法
......
(一)aspx页面上的代码片段
<body>
<script language="javascript" type="text/javascript">
function DisplayBehindCode() {
var text="<%=Name()%>";
alert(text);
}
</script>
....
<asp:Button ID ......
js中的任何对象都继承Object函数类,因此都Object.prototype包含的所有方法。今天我就来讨论下这些最基本的方法和怎样去重写。
首先,包含7个最基本的函数:
function A()
{
var obj = {};
obj.constructor //Object函数
obj.hasOwnProperty //判断参数是否是obj对象的本地非protorype属性
obj.isPrototype ......