lodash 개요:객체 Object 메서드(하나)
_.assign({a:1},{a:2},{a:3}) //{a: 3}
유사한 방법:.assignIn(object, [sources]): 같은 합병 계승은 원형까지 함께 처리합니다.사실은 원래의.extend () 방법.고급 방법:.assignWith(object, sources, [customizer]): 생략..assignInWith(object, sources, [customizer]): 생략.
2、_.at(object, [paths]): object가 지정한 위치의 값을 꺼내 그룹을 구성합니다.
var object = { 'a': [{ 'b': { 'c': 3 } }, 4] };
_.at(object, ['a[0].b.c', 'a[1]']); // => [3, 4]
3、_.create(prototype, [properties]): 원형에서 계승되는 대상이 흔하고 자신의 속성을 추가할 수 있습니다.일반적으로 원형의 계승에 쓰인다.
function Shape() {
this.x = 0;
this.y = 0;
}
function Circle() { }
Circle.prototype = _.create(Shape.prototype, {
'constructor': Circle
});
var circle = new Circle;
circle instanceof Circle; // => true
circle instanceof Shape; // => true
4、_.defaults(object, [sources]): 같은 계승 합병 대상입니다. 속성 이름이 같으면 최초의 값만 보존합니다.유사한 방법:.defaultsDeep(object, [sources]): 깊이 합치면 끼워 넣은 대상도 단계별로 비교 합쳐집니다.
_.defaults({ a: {b:2} }, {a: {b:1,c:3} });
// { a:{b: 2} }
_.defaultsDeep({ a: {b:2} }, {a: {b:1,c:3} });
// { a:{b: 2, c: 3} }
5、_.findKey(object, [predicate=.identity]):value를 통해 키를 찾습니다. 첫 번째 항목만 일치합니다.
var users = {
'barney': { 'age': 36, 'active': true },
'fred': { 'age': 40, 'active': false },
'pebbles': { 'age': 1, 'active': true }
};
_.findKey(users, 'active'); // => 'barney'
유사한 방법:.findLastKey(object, [predicate=.identity]): 뒤에서 앞으로 일치합니다.
6、_.forIn(object, [iteratee=.identity]): 원형의 속성을 포함하여 객체의 for in이 반복됩니다..forInRight(object, [iteratee=.identity]): 역방향으로 이동합니다..forOwn(object, [iteratee=.identity]): 원형을 포함하지 않고 자신의 속성만 반복합니다..forOwnRight(object, [iteratee=.identity]): 자신의 속성을 역방향으로 이동합니다.
function Foo() {
this.a = 1;
this.b = 2;
}
Foo.prototype.c = 3;
_.forIn(new Foo, (value, key)=> console.log(key)); // a b c
_.forInRight(new Foo, (value, key)=> console.log(key)); // c b a
_.forOwn(new Foo, (value, key)=> console.log(key)); // a b
_.forOwnRight(new Foo, (value, key)=> console.log(key)); // b a
7、_.functions(object): 개체 아래에 열거할 수 있는 방법의 이름으로 구성된 그룹을 되돌려줍니다. 원형을 통해 계승된 것은 포함되지 않습니다..functionsIn(object): 위에서 원형을 통해 계승된 것도 포함됩니다.
function Foo() {
this.a = function(){};
this.b = function(){};
}
Foo.prototype.c = function(){};
_.functions(new Foo); // => ['a', 'b']
_.functionsIn(new Foo); // => ['a', 'b', 'c']
8、_.get(object, path, [defaultValue]):objdect에서 지정한 경로의 값을 가져오고undefined에서defalutValue로 돌아갑니다.이 기능은 약간 닭갈비 같다.
9、_.has(object, path): path가object 대상의 직접 속성인지 확인합니다.
_.**hasIn**(object, path):
var object = { 'a': { 'b': 2 } };
var other = _.create({ 'a': _.create({ 'b': 2 }) });
_.has(object, 'a.b'); // => true
_.has(other, 'a'); // => false
_.hasIn(other, 'a'); // => true
10、_.vert(object): 이거 재미있어요. object의 키와value를 맞춰요.
_.**invertBy**(object, [iteratee=_.identity]): 。
var object = { 'a': 1, 'b': 2, 'c': 1 };
_.invert(object); // => { '1': 'c', '2': 'b' }
_.invertBy(object); // => { '1': ["a", "c"], '2': ['b' ]}
_.invertBy(object, value => 'group' + value); //=> { 'group1': ["a", "c"], 'group2': ['b' ]}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.