js创建对象的三种方式
<script>
//创建对象的三种方式
// 1.利用对象字面量(传说中的大括号)创建对象 var obj1 = {
uname: 'ash',
age: 18,
sex: "女",
sayhi: function() {
console.log("hello kitty"); }
} //访问属性的两种方法
console.log(obj1.uname);
console.log(obj1[`age`]); //调用对象的方法
obj1.sayhi(); // 创建对象的第二种方式,用new 关键字
var obj2 = new Object();
//追加属性和方法
obj2.uname = '小明';
obj2.age = 20;
obj2.sex = "男";
obj2.sayHi = function() {
console.log("hi~");
}
console.log(obj2.age);
console.log(obj2[`age`]);
obj2.sayHi(); // 以上两种方法创建对象一次只能创建一个,用构造函数可以多次创建对象
// 创建对象的第三种方式,用构造函数
function Star(uname, age, sex) {
this.uname = uname; //构造函数里面一定要用到this关键字 ,表示当前对象
this.age = age;
this.sex = sex;
this.sing = function(ge) {
console.log(uname + "的主打歌 " + ge); }
} var LDH = new Star("刘德华", 20, "男");
console.log(LDH.uname);
console.log(LDH.age);
LDH.sing("冰雨"); /* new一个对象的执行过程:
1.创建一个新对象
2.this指向这个对象
3.形参为这个对象的属性和方法赋值
4.返回这个对象,所以构造函数里面不需要return */ var YBN = new Star("姚贝娜", 21, "女"); //new出一个对象
YBN.sing("随他吧");
</script>
如何遍历这个对象的属性和值呢?用for in 循环
<script>
// 首先,我用构造函数创建对象
function Star(uname, age, sex) {
this.uname = uname;
this.age = age;
this.sex = sex;
this.sing = function(ge) {
console.log(uname + "的主打歌" + ge); } }
var GLN = new Star("龚琳娜", 30, "女");
//现在来遍历龚琳娜的属性
for (const key in GLN) {
console.log(GLN.uname + "的属性有" + key);
console.log(GLN.uname + "的值有" + GLN[key]);
}
</script>
注意,key只是属性,obj[key] 才是值
js创建对象的三种方式的更多相关文章
- js创建对象的三种方式和js工厂模式创建对象
文章地址: https://www.cnblogs.com/sandraryan/ 创建对象 创建对象的三种方式 构造函数 ,是一种特殊的方法.主要用来在创建对象时初始化对象 1. 调用系统的构造函数 ...
- spring入门:beans.xml不提示、别名、创建对象的三种方式
spring的版本是2.5 一.beans.xml文件不提示 Location:spring-framework-2.5.6.SEC01\dist\resources\spring-beans-2.5 ...
- Spring笔记03(Spring创建对象的三种方式)
1.创建对象的三种方式和bean的生命周期的验证: Animal接口代码: package cn.pb.dao; /** * 动物接口 */ public interface Animal { //吃 ...
- Spring创建对象的三种方式以及创建时间
创建对象的三种方式: 1.采用默认的构造函数创建 2.采用静态工厂方法 1.写一个静态工厂方法类 public class HelloWorldFactory { public static Hell ...
- JavaScript中创建对象的三种方式!
JavaScript中创建对象的三种方式! 第一种 利用对象字面量! // 创建对象的三种方式! // 1 对象字面量. var obj = { // 对象的属性和方法! name: 'lvhang' ...
- js 函数定义三种方式
<p>Js 函数定义的三种方式:</p> <br> <p>方式一:function</p> <script type="te ...
- C++创建对象的三种方式
C++在创建对象的时候,有三种方式: #include <iostream> using namespace std; class A { private: int n; public: ...
- [UE4]C++创建对象的三种方式
#include <iostream> using namespace std; class A { private: int n; public: A(int m):n(m) { } ~ ...
- 第184天:js创建对象的几种方式总结
面向对象编程(OOP)的特点: 抽象:抓住核心问题 封装:只能通过对象来访问方法 继承:从已有的对象下继承出新的对象 多态:多对象的不同形态 一.创建对象的几种方式 javascript 创建对象简单 ...
随机推荐
- 基于 SpringBoot2.0+优雅整合 SpringBoot+Mybatis
SpringBoot 整合 Mybatis 有两种常用的方式,一种就是我们常见的 xml 的方式 ,还有一种是全注解的方式.我觉得这两者没有谁比谁好,在 SQL 语句不太长的情况下,我觉得全注解的方式 ...
- 【2019年05月21日】A股ROE最高排名
个股滚动ROE = 最近4个季度的归母净利润 / ((期初归母净资产 + 期末归母净资产) / 2). 查看更多个股ROE最高排名. 兰州民百(SH600738) - 滚动ROE:86.45% - 滚 ...
- 非mvn项目转为mvn项目并构建mvn私服
非mvn项目转为mvn项目并构建mvn私服 一.背景 公司里的系统是老系统,没有使用mvn,但是现在准备使用持续集成(CI),就要用到mvn,所以现在需要将老项目转为mvn项目,并且非mvn项目也是不 ...
- Spring Boot 2整合Redis做缓存
既然是要用Redis做缓存,自然少不了安装了.但是本文主要讲Spring Boot与Redis整合.安装教程请另行百度! 1.首先是我们的Redis配置类 package com.tyc; impor ...
- Python3+PyCryptodome实现各种加密算法教程
一.说明 PyCryptodome是python一个强大的加密算法库,可以实现常见的单向加密.对称加密.非对称加密和流加密算法.直接pip安装即可: pip install pycryptodome ...
- 发现一个企业微信第三方应用开发的疑似BUG
1.企业微信两个账号A(超级管理员),账号B(分级管理员),账号B具有创建应用与小程序权限.2.账号B添加一个第三方应用后(创建后能看到第三方应用),使用下图接口登录时回调的agent一直为空,3.超 ...
- python基础知识的学习和理解
参考链接:https://github.com/yanhualei/about_python/tree/master/python_learning/python_base python基础知识笔 ...
- SQL Server 中获取一个表的字段信息
直接贴代码了: SELECT sysobjects.name AS TableName, syscolumns.Id AS TableId, syscolumns.name AS DbColumnNa ...
- HDU校赛 | 2019 Multi-University Training Contest 5
2019 Multi-University Training Contest 5 http://acm.hdu.edu.cn/contests/contest_show.php?cid=852 100 ...
- Java并发编程: CountDownLatch、CyclicBarrier和 Semaphore
java 1.5提供了一些非常有用的辅助类来帮助并发编程,比如CountDownLatch,CyclicBarrier和Semaphore. 1.CountDownLatch –主线程阻塞等待,最后完 ...