作者: 招投标秘籍 | 来源:发表于2021-03-09 21:26 被阅读0次

我们知道数据类型一共分为Number、String、Boolean、Null、undefined、object、symbol、bigIn八种,今天主要来介绍一种非常重要的object(对象).

1.对象的基本概述

1.1对象的定义

对象为无序的数据和键值对的集合.

1.2对象的写法

1.let obj ={'name':'runrun','age':'26'}
2.let  obj=new Object({'name':'runrun','age':'26'})
3.console.log({'name':'runrun','age':'26'})

1.3对象需要注意的几点

示例中的键为字符串,引号可以省略不过省略之后还是字符串.举例比如空字符串也可以是键(同时表情中文这些都可以做键值)

 var obj = {
    '':1
    }
  console.log(obj)//下面是打印的结果
image.png

1.4如何让变量的值成为键,加上[]

let a ='xxx'
 var obj ={
     'a':1111
 }
 
 var obj2 ={
     [a]:1111
 }
 console.log(obj)//没变
 console.log(obj2)//变量的值已经为键
image.png

2.删除对象的属性

2.1删除属性两种方法(delate和obj.name=undefined)

1.var obj ={name: 'frank','age':30}
obj.name=undefined//键还在,不过值为undefined
console.log(obj)

2.var obj1={name:'frank',age:26}
delete obj1.name
console.log(obj1)//直接删除也可以用delete obj1['name']
image.png

2.2如何判断该属性名是不是obj的

  1. 'xxx' in obj === false(不含属性名)
  2. 'xxx' in obj && obj.xxx === undefined(含有属性名,值为undefined)

3.查看对象的属性

3.1查看各总情况的属性

let obj2 = {name:'frank',age:34} 
console.log(Object.keys(obj2))//查看所有的键
console.log(Object.values(obj2))//查看所有键的值
console.log(Object.entries(obj2))//Object.entries()方法返回一个给定对象自身可枚举属性的键值对数组
console.dir(obj2)//可以打印自有属性和共有属性
image.png

3.2如何查看该属性是不是自己所有的属性

console.log(obj.hasOwnProperty('toString'))
image.png

3.3如何查看属性的值

let obj2 = {name:'frank',age:34} 
obj2['name']
console.log(obj2['name'])
image.png

4.如何修改和增加属性

4.1修改和增加一般属性

let obj2 = {name:'frank',age:34} 
console.log(obj2['name']='jack')//改了键值
console.log(obj2['age']=88)//改了年龄
console.log(Object.assign(obj2,{p1:1,p2:2})//修改多对键和值
image.png

4.2如何创建原型修改隐藏属性

var common={'国籍':'中国',hairColor:'black'}
var person={name:'frank'}
person._proto_=common
console.dir(person)//把common设置为了原型

var common={'国籍':'中国',hairColor:'black'}
var person =Object.create(common,{name:{value:'frank'}})
console.dir(person)
image.png

5.'name' in obj和obj.hasOwnProperty('name') 的区别

in判断的是对象的所有属性,包括对象自身及其原型的属性;
而hasOwnProperty则是判断对象自身是否具有某个属性。

Object.prototype.apple= 'red';
let obj = {
    name: 'runrun',
    age: '2'
}
console.log(obj.hasOwnProperty('apple')) // false
console.log(obj.hasOwnProperty('apple')) // true
console.log('apple' in obj) // true

本文为本人的原创文章,著作权归本人和饥人谷所有,转载务必注明来源.

相关文章

  • js对象及其方法

    1.对象MDN文档2.JS基础--JS对象及其基本用法3.JavaScript 对象所有API解析

  • JS 对象基本用法

    1.声明对象的两种语法 ES6新增了两种声明对象的方法,分别是let和const。 2.如何删除对象的属性 del...

  • JS 对象基本用法

    一、声明对象的两种语法 let obj = { 'name' : 'frank' , 'age' : 18} le...

  • js对象基本用法

    1.声明对象 定义:无序的数据集合、键值对的集合 写法 属性名:每个key都是对象的属性名(property) 属...

  • JS 对象基本用法

    1 声明对象的两种语法 2 如何删除对象的属性 3 如何查看对象的属性 Object.keys(obj) 查...

  • JS 对象基本用法

    对象的定义 对象是无序的数值集合或者键值对的集合 声明对象的语法 let object = { 'name' : ...

  • JS对象基本用法

    一、声明对象的两种方法(对象:无序的数据集合&键值对的集合) ·简易声明:let obj = { 'name' :...

  • JS对象基本用法

    与JS相关的七种数据类型以及五个falsy值 七种数据类型 : number、string、bool、symbol...

  • JS对象基本用法

    声明对象的两种语法 如何删除对象属性 如何查看对象的属性 查看自身所有属性 查看自身+共有属性 判断一个属性是自身...

  • JS 对象基本用法

    6种基本数据类型 null undefined string number boolean symobl 5种fa...

网友评论

    本文标题:

    本文链接:https://www.haomeiwen.com/subject/mchmqltx.html