JavaScript基础(二)函数

一、函数深入用法     
1、将函数付给一个变量
 
#eg:
function func(a,b){
    return a*b
}
var x = func
#实例
    <script type="text/javascript">
        function func(a,b){
            return a*b
        }
        var x = func;   // 将函数赋给一个变量
        alert(x(12,8));
    </script>
2、将函数赋给对象的属性
 
#实例:
    <script type="text/javascript">
        var per = {"name":"tom","age":20,"sex":"男"}    // 用字面量的方式定义一个对象
        per.eat=function(){  //给对象添加一个函数属性
            alert("吃饭。。。")
        }
        per.eat();
    </script>

3、将函数作为参数传递给另一个函数(高阶函数)
 
    <script type="text/javascript">
        function up(s){
            return s.toUpperCase();
        }
        function lower(s){
            return s.toLowerCase();
        }
        function highLevel(s,f){    //高阶函数
            alert(f(s));
        }
        var s="heLLo";
        highLevel(s,up);
        highLevel(s,lower);
    </script>
4、将函数作为返回值
 
    <script type="text/javascript">
        function outer(a){
            function inner(){
                alert("这是内部函数")
                alert("a="+a);
            }
            return inner;
        }
        func=outer("a");
        func();
    </script>
什么叫做闭包?“
    “闭包”是指内层函数可以贮存外层函数的局部变量或者参数
 
    <script type="text/javascript">
        var array=[];
        function outer(){
            for (var i=0 ; i < 4 ; i++){
                var x = {};  //字面量方式创建对象
                x.inner=function(){
                    alert(i);
                };
                array.push(x)
            }
        }
        outer();
        for (var index in array){
            var abj = array[index];
            obj.inner();
        }
    </script>




二、函数的参数     
JavaScript中传递给函数的参数是通过一个类似于数组的内部值:arguments对象来保存的,这个内部值在函数对象生成的时候就被初始化了。

arguments对象有length属性,可以根据此属性得知实际调用时传递参数的个数,也可以通过下标操作符来获取arguments中的元素


三、JavaScript的内置对象     
1.String
    常用属性:length  返回字符串的长度
    常用方法:toUpperCase()
                      toLowerCase()
                      indexOf("子字符串")
                      lastIndexOf("子字符串")
                      charAt("子字符串")
                      substring(beginIndex)
                      substring(beginIndex,endIndex)    
 
    <script type="text/javascript">
        var s="Hello World";
        alert("从前向后o字符的索引位置:"+s.indexOf("o"));
        alert("从后向前o字符的索引位置:"+s.lastIndexOf("o"));
        alert("索引为1的位置对应的字符:"+s.charAt(1));
        alert("从索引为1截取:"+s.substring(1));
        alert("截取索引1~7(不包括)位置的值:"+s.substring(1,7));
    </script>
2.math内置属性
    常用属性:PI 圆周率
    常用方法:Math.randmo() 获取0.0到1.0之间的随机数
                      Math.pow(a,b) a的b次方
                      Math.sqrt(num) 求某个数的平方根
                      Math.ceil(num) 上舍入
                      Math.floor(num) 下舍入
                      Math.round(num) 四舍五入
 
    <script type="text/javascript">
         alert("圆周率:"+Math.PI);
         alert("0.0~1.0之间的随机数:"+Math.random());
         alert("2的3次方:"+Math.pow(2,3));
         alert("9的平方根:"+Math.sqrt(9));
         alert("2.1上舍入的结果:"+Math.ceil(2.1));
         alert("9.99下舍入的结果:"+Math.floor(9.99));
         alert("5.9123456四舍五入的结果:"+Math.round(5.9123456));
    </script>
3.Array内置对象
    声明数组的方式:
        var 数组名称=[元素1,元素2,元素3.....]
JS中数组的特性:
        1.可以存储不同的数据类型的元素。
        2.数组的长度可变
        3.数组的索引可以是数组,也可以是字符串,
数组的属性:length 长度属性可以变化
数组的方法:push(元素)  将元素添加到数组中
注意:给数组添加元素的另一种方式:数组名[索引]=元素
pop()弹出一个元素
如何便利数组:
        for。。。in 语法糖  for (var index in array)  // index是array 的索引
 
    <script type="text/javascript">
         var fruits=["apple","banana","orange","watermelon"];
         alert(fruits.length);
         alert(fruits.pop());
         alert(fruits.pop());
        for (var i = 0; i < fruits.length; i++) {
            alert(fruits[i]);
        }
        var info=[];
        // info["陕西省"]=["西安市","咸阳市","宝鸡市"];
        // info["河北省"]=["石家庄市","邯郸市","唐山市"];
        // info.push("apple");
        info[999]="China";
        // info.length=666;
        // alert(info[1]);
        alert("当前数组的长度是:"+info.length);
        for(var index in info){
            alert(typeof(index));
            alert(index+"============>"+info[index]);
        }
    </script>
4.date内置对象
    var date = new Date():
常用方法:getFullYear(); // 获取年
                    getMonth(); 获取月
                    getDate(); 获取一个月中的第几天
                    getDay(); 获取一周中的第几天
                    getHours(); 获取时
                    getMinutes(); 获取分
                    getSeconds(); 获取秒

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值