IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> JavaScript基础语法11-对象 -> 正文阅读

[JavaScript知识库]JavaScript基础语法11-对象

对象

在JavaScript中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象。例如字符串,数值、函数等

对象是由属性方法组成的

  • 属性:事物的特征,在对象中用属性来表示(常用名词)
  • 方法:事物的行为,在对象中用方法来表示(常用动词)

创建对象的三种方式

  • 利用字面量创建对象
  • 利用new Object创建对象
  • 利用构造函数创建对象

1.利用字面量创建对象

    <script>
        // 利用字面量创建对象 {}
        var obj = {}; //创建了一个空的对象
        var obj = {
            uname: '张三',
            uage: 18 ,
            usex: '男',
            sayHi:function(){
                console.log('hi~');
            }
        }
        // (1) 里面的属性或者方法我们采取键值对的形式 键 属性名 : 值 属性值
        // (2) 多个属性或者方法用逗号隔开的
        // (3) 方法冒号后面跟的是一个匿名函数
 
        // 2.使用对象
        // (1) 调用对象的属性 1. 对象名.属性名 2.对象名['属性名']
        console.log(obj.uname);
        console.log(obj['uage']);
        // (2) 调用对象的方法(匿名函数) 对象名.方法名
        obj.sayHi();
    </script>

变量、属性、函数、方法总结

    <script>
        // 变量、属性、函数、方法的区别
        // 1.变量和属性的相同的  他们都是用来存储数据的
        var num = 10;
        var obj ={
            age : 18,
            fn: function{
                // 方法
            }
        }
        function fn(){
            // 函数
        }
        console.log(obj.age);
        // 变量 单独声明并赋值  使用的时候直接写变量名 单独存在
        // 属性 在对象里面的不需要声明 使用时必须是 对象.属性
        // 2. 函数和方法的相同点 都是实现某种功能 做某件事
        // 函数是单独声明 并且调用的 函数名()  单独存在的
        // 方法 在对象里面 调用的时候 对象.方法()
    </script>

2.new关键字

    <script>
        // 利用 new Object 创建对象
        var obj = new Object(); //创建了一个空的对象
        obj.name = '张三';
        obj.age = 18;
        obj.sex = '男';
        obj.sayHi = function(){
            console.log('Hi');
        }
        // (1) 我们是利用 等号赋值的方法 添加对象的属性和方法
        // (2) 每个属性和方法之间用 ; 号结束
    </script>

new关键字执行过程

?

    <script>
        // new关键字执行过程
        // 1. new 构造函数可以在内存中创建一个空的对象
        // 2. this 就会指向刚才创建的空对象
        // 3. 执行构造函数里面的代码 给这个空对象添加属性和方法
        // 4. 返回这个对象
        function Star(uname, age, sex, sing){
            this.name = uname;
            this.age = age;
            this.sex = sex;
            this.sing = function(){
                console.log(sing);
            }
        }
        var zs = new Star('张三', 18, '男');
    </script>

3.利用构造函数创建对象?

构造函数:一种特殊的函数,主要用来初始化对象,即为对象成员变量赋值初始化。它总与new运算符一起使用。我们可以把对象中一些公共的属性和方法抽取出来,然后封装到这个函数里面。

    <script>
        // 利用构造函数创建对象
        // 创建4个对象  相同的属性:姓名、年龄、性别 相同的方法: 常规
        function 构造函数名(){
            this.属性 = 值;
            this.方法 = function(){

            }
        }
        new 构造函数名();
        // 示例
        function Star(uname, age, sex, sing){
            this.name = uname;
            this.age = age;
            this.sex = sex;
            this.sing = function(){
                console.log(sing);
            }
        }
        var zs = new Star('张三', 18, '男');
        console.log(zs.name);
        zs.sing('张三的歌');
        // 1.构造函数名字首字母大写
        // 2.构造函数不需要return就可以返回结果
        // 3.我们调用构造函数 必须使用 new
        // 4.我们只要new Star() 调用函数就创建一个对象 zs {}
        // 5.我们的属性和方法前面必须添加 this
    </script>

构造函数与对象的区别

    <script>
        // 构造函数和对象
        // 1.构造函数  泛指某一大类
        function Star(uname, age, sex, sing){
            this.name = uname;
            this.age = age;
            this.sex = sex;
            this.sing = function(){
                console.log(sing);
            }
        }
        // 2.对象 特质 是一个具体的事物 刘德华 == {name: '张三', age: 18, sex: '男'}
        var zs = new Star('张三', 18, '男'); // 调用一个函数返回的是一个对象
        console.log(zs.name);

        // 3. 利用构造函数创建对象的过程称为对象的实例化
        
    </script>

遍历对象属性

for...in 用于对数组或者对象的属性进行循环操作

? ? ? ? for (变量 in 对象){?}

    <script>
        // 遍历对象
        var obj = {
            name: '张三',
            age: 18,
            sex: '男',
            fn:function(){}
        }
        // for...in 遍历我们的对象
        for (变量 in 对象){

        }
        for (var k in obj){
            console.log(k); // k 变量 输出 得到的是属性名
            console.log(obj[k]); //obj[k] 得到对象里面的属性值

        }
        // 使用for...in里面的变量 一般使用 k 或者 key
    </script>

小结

?

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-12-28 22:49:56  更:2021-12-28 22:51:21 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 10:45:24-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码