Android 程序员搞 js 之 基础(十 一) 难点

Android 程序员搞 js 之 基础(十)

一、编程思想

用代码的方式去做类似于生活中做的事情;
面向过程:需要亲力亲为,每件事的具体过程都要知道,注重过程;
面向对象:根据需求找对象,所有的事情由对象去完成,注重的是结果;
js 不是面向对象的语言,但是可以模拟面向对象的思想;js 是一门基于对象的语言。

二、创建对象的三种方式

1、调用系统构造函数创建对象;
  <script>
        var obj = new Object();
        //添加属性
        obj.name = "小米";
        obj.age = "18";
        obj.sex = "女";
        //添加方法
        obj.play = function () {
            console.log("王者荣耀")
        };

        obj.cook = function () {
            console.log("蛋炒饭")
        };
        //调用属性
        console.log(obj.name);
        console.log(obj.age);
        console.log(obj.sex);
        //调用方法
        obj.play();
        obj.cook();
    </script>

效果

2、自定义构造函数创建对象(结合第一种和需求通过工厂模式创建对象);

    <script>

        function createObj(name, age) {
            var obj = new Object();
            obj.name = name;
            obj.age = age;

            obj.message = function () {
                console.log("我叫:" + this.name + " 我的年龄是:" + this.age + "岁")
            };

            return obj;
        }

        var per1 = createObj("小米", 16);
        per1.message();
        var per2 = createObj("华为", 19);
        per2.message();
    </script>

效果

3、字面量的方式创建对象。

三、JSON 格式数据遍历

1、从 json 中获取数据 也就是 value
  <script>

        var json = {
            "name": "小明",
            "age": 18,
            "school": "河北科技大学"
        };

        console.log(json.name);
        console.log(json["name"]);

    </script>

Json 内取值

2、Json 遍历 使用 for - in 循环
  <script>

        var json = {
            "name": "小明",
            "age": 18,
            "school": "河北科技大学"
        };
        
        for (var key in json) {

            console.log(key);
            console.log(json[key])
        }

    </script>

效果

四、简单类型和复杂类型

1、原生数据类型

number、String、boolean、undefined、null、Object

2、基本类型(简单类型),值类型

number、String、boolean
传递的是值

3、复杂类型(引用类型)

Object
传递的是地址

4、空类型

undefined、null

五、Js 的三种对象

1、内置对象;
Math
Math.PI:3.1415926
Math.abs(num):绝对值
Math.ceil() :向上取整
Math.floor():向下取整
Math.max() : 输出一列数据内的最大值
Math.min(); 输出一列数据内的最小值;
Math.pow(2,3); 一个数据的多少次幂  2 的 3 次幂
Math.random(); 输出一个伪随机数
Date
var date = new Date(): 不传参显示的是当前当地的标准时间;

Date.new(): 表示当前时间戳  毫秒值

获取年
console.log(date.getFullYear());
获取月
console.log(date.getMonth() + 1);
获取日
console.log(date.getDate());
获取时
console.log(date.getHours());
获取分
console.log(date.getMinutes());
获取秒
console.log(date.getSeconds());
获取星期几
console.log(date.getDay());
String

字符串具有不可变性;
字符串可以看作为字符数组;

String.charAt(10) :取出指定索引的字符,从0开始计数;
String.concat("小米", "华为", "ov")  : 将多个字符串进行拼接;
String.slice(2,4) : 截取指定索引的字符串;
String.replace("k","000") : 将第一个指定字符,替换为 指定字符;
String.split("k")  : 将指定字符串 按照某个字符拆分为一个数组;
String.substr(2,2) : 从指定索引开始 截取指定长度 的字符串
String.substring(2,6) : 截取两个索引之间的字符串;
String.indexOf("k") : 从指定字符串首位开始,获取指定字符的 索引;
String.lastIndexOf("k") :从指定字符串尾部开始,获取指定字符的 索引;
Array
var array = new Array();  创建数组
var array = [];  创建数组
Array.isArray(array);  判断对象是不是一个数组
array.concat(array1, array2); 合并多个数组
array.every(function (a, b, c) {
            console.log("a:"+a+" b: "+b+" c:"+c)
        }); 测试一个数组  a:元素值,b:元素值索引,c:谁调用了这个方法  返回值为 布尔类型
array.push() :  将数据添加到数组末尾;
array.pop() :  删除数组最后一个数据;
array.shift() : 删除数组第一个数据;
array.unShift : 在数组首元素前 添加一个数据;
array.forEach(function (a,b) {
        console.log(a+"........"+b)
    }) :遍历数组  参数 a 为 数据,参数 b 为 数据索引
array.join()    : 向数组内添加指定的分隔符;
array.map() :数组内每个元素都执行该函数,并且生成新的集合。
array.reverse()  : 数组内数据翻转;
array.sort()  : 数据排序

2、自定义对象;
3、浏览器对象;

Android 程序员搞 web 之 webApi (十 二)

欢迎关注

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值