javascript对象的方法

前言:有时候我们需要操作对象,比如将对象类型转换成其他数据类型(字符串,数组等),有时候需要进行复制拷贝(表格编辑业务)。

创建对象:

1:var person1 = new Object(); //创建了一个新的空的对象

     person1.name = "jimmy";

2:var obj = { name:'jimmy' }

3:

构造函数
function Person(name,age){
 this.name = name;
 this.age = age;
 this.sayHi = function () {
      console.log("hello");
 };
}
var p = new Person("jimmy",18);

es6对象方法:

函数创建对象

function f(x, y) {
  return {x, y};
}

// 等同于

function f(x, y) {
  return {x: x, y: y};
}

f(1, 2) // Object {x: 1, y: 2}
下面一样的

function getPoint() {
  const x = 1;
  const y = 10;
  return {x, y};
}

getPoint()
// {x:1, y:10}

 定义拼接key对象:

let propKey = 'foo';

let obj = {
  [propKey]: true,
  ['a' + 'bc']: 123
};

注意,属性名表达式如果是一个对象,默认情况下会自动将对象转为字符串[object Object],这一点要特别小心。

使用对象中括号时,需要【】里是个字符串

var obj = {
  a: 3
}
console.log(obj['a']);

或者
var obj = {
  'a': 3
}
console.log(obj[a]);

对象类型转换:

对象转数组:

 array.from:

const someNumbers = { '0': 10, '1': 15, length: 2 };

Array.from(someNumbers, value => value * 2); // => [20, 30]

 或者下面的遍历方法

对象转字符串:

JSON.stringify(jsonobj); //可以将json对象转换成json对符串

const obj = {
     id: 0,
     name: '张三',
     age: 12
}
const objToStr = JSON.stringify(obj)
console.log('obj:', obj)
console.log('objToStr:', objToStr)

对象的遍历:

Object.keys():遍历对象的key属性,生成一个数组,Object.keys()只返回自己的属性键

Object.values():遍历对象的value属性值,生成一个数组。

Object.entries():遍历对象每一项,生成一个数组。

对象的合拼:

var obj1= {'a': 1};

var obj2= {'b': 1};

var c = $.extend(obj1, obj2);

console.log(obj1); // {a: 1, b: 1} obj1已被修改

对象的拷贝:

Object.assign(target, ...sources)

super关键词:

this关键字总是指向函数所在的当前对象,ES6 又新增了另一个类似的关键字super,指向当前对象的原型对象。

const proto = {
  foo: 'hello'
};

const obj = {
  foo: 'world',
  find() {
    return super.foo;
  }
};

Object.setPrototypeOf(obj, proto);
obj.find() // "hello"

 注意,super关键字表示原型对象时,只能用在对象的方法之中,用在其他地方都会报错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值