【JavaScript】JavaScript基础-函数

来源:互联网 发布:锡林浩特局气网络宾馆 编辑:程序博客网 时间:2024/05/17 05:13
1,函数的作用与定义:
Javascript也是基于对象(Object-based)的编程语言,而不是面向对象的语言。

----主程序-----|
                        |
    函数1          |
    .....               |
    函数2          |
    .....               |
    函数3          |
                        |
----------------

函数的定义与调用:
东一一个函数的格式入下:
function 函数名(参数列表)
{
    程序代码
    return 表达式;
}

对函数进行调用的几种方式:
(1)函数名(参数1,参数2,...)
(2)变量=函数名(参数1,参数2,...)
(3)对于有返回值的函数调用,也可以在程序中直接使用返回的结果
例如:alert("sum="+square(2,3));

注意:
<script language="javascript">
    var msg="全局变量"
    function show()
    {
        msg="局部变量";
    }
    show();
    alert(msg);//此处的mag值为"局部变量"(全局变量被更改)
</script>

<script language="javascript">
    var msg="全局变量"
    function show()
    {
        var msg;
        msg="局部变量";
    }
    show();
    alert(msg);//此处的mag值为"全局变量"(局部变量改的是自己的值,所以全局变量没有被改变)

</script>


2.参数个数可变的函数:
<script language="javascript">
    function testparams()
    {
        var params="";
        for(var i=0;i<arguments.length;i++)
        {
            params+=arguments[i]+"";
        }
alert(params);
    }
    testparams("abc",123);
    testparams(123,456,"abc");
</script>
其中,arguments对象来访问调用程序传递的所有参数。

3.创建动态函数
类似c语言指针指向函数的指向方式。被称为“创建动态函数”。
创建动态函数的基本语法格式:
var varName=new Function(argument1,...,lastArgument);

说明:所有的参数都必须是字符串类型的,最后的参数必须是这个动态函数的功能程序代码。

例子:
<script language="javascript">
    var square=new Function("x","y","var sum;sum=x*x+y*y;return sum;");
    alert(square(3,2));
</script>

动态函数有什么作用?我们在什么情况下用动态函数?
答:在普通的函数当中,里面定义的所有的程序代码都是必须事先明确固定的,不可能随程序运行的情况的改变而变动。使用动态创建函数的方式,一个函数的功能执行代码是用一个字符串而组成的。而这个字符串我们可以通过若干个变量进行相连而产生。这些变量进行相连,我们只要改变这些变量的取值,最终生成的字符串的内容也会随之改变,那么这个动态创建的函数的功能代码也就改变了。


4.JavaScript中的系统函数
(1)encodeURI方法:返回对一个URI字符串编码后的结果
例子:
<script>
    var urlStr=encodeURI("http://www.it315.org/index/html?country=中国&name=z x");
    alert(urlStr);
</script>
结果http://www.it315.org/index/html?country=%E4%B8%AD%E5%898%BD&name=z%20x

(2)decodeURI方法:将一个已编码的URI字符串解码成最初始的字符串并返回。
例子:
<script>
    var urlStr=decodeURI("http://www.it315.org/index/html?country=%E4%B8%AD%E5%898%BD&name=z%20x");
    alert(urlStr);
</script>
结果:http://www.it315.org/index/html?country=中国&name=z x

(3)parseInt方法
将一个字符串按指定的进制转换成一个整数,语法格式为:parseInt(numString,[radix])。如果没有指定第二个参数,则前缀为'0x'的字符串被视为十六进制,前缀为‘0’的字符串被视为八进制,所有其他字符串都被视为是十进制。

例子:
alert(parseInt("123abc",10));
测试结果:123(说明不能转为整数的会被忽略掉)

(4)parseFloat方法
将一个字符串转换成为对应的小数

(5)用于检测parseInt与parseFloat方法的返回值是否为NaN。

(6)escape方法
返回对一个字符串进行编码后的结果字符串。所有空格、标点、重音符号以及任何其它非ASCII字符都用%xx替换,其中xx等于表示该字符的Unicode编码的十六进制数,字符值大于255的字符以%uxxxx格式存储。

escape方法可以用于对文本的简单加密。
对于RUL的编码不要用escape方法,一定要encodeURI方法。

(6)unescape方法
将一个用escape方法编码的结果字符串解码成原始字符串并返回。

(7)eval方法
将其中的参数字符串作为一个JavaScript表达式执行。

当然方法还有很多,需要查询的时候,请查阅Visual Studio.NET20XX

尊重开源精神,尊重劳动成果,转载请注明出处:http://blog.csdn.net/acmman/article/details/43900717

0 0
原创粉丝点击