From a065e04d529da1d847b5062a12c46d916408bf32 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 21:46:22 -0500 Subject: update based on https://github.com/mdn/yari/issues/2028 --- .../global_objects/array/observe/index.html | 87 ---------- .../global_objects/object/observe/index.html | 193 --------------------- 2 files changed, 280 deletions(-) delete mode 100644 files/ko/web/javascript/reference/global_objects/array/observe/index.html delete mode 100644 files/ko/web/javascript/reference/global_objects/object/observe/index.html (limited to 'files/ko/web/javascript/reference/global_objects') diff --git a/files/ko/web/javascript/reference/global_objects/array/observe/index.html b/files/ko/web/javascript/reference/global_objects/array/observe/index.html deleted file mode 100644 index 015ae049c5..0000000000 --- a/files/ko/web/javascript/reference/global_objects/array/observe/index.html +++ /dev/null @@ -1,87 +0,0 @@ ---- -title: Array.observe() -slug: Web/JavaScript/Reference/Global_Objects/Array/observe -tags: - - Array - - JavaScript - - Method - - Obsolete -translation_of: Archive/Web/JavaScript/Array.observe ---- -
{{JSRef}} {{obsolete_header}}
- -

Array.observe() 메서드는 {{jsxref("Object.observe()")}}가 객체를 관찰하는 것과 비슷하게 , 배열의 변화를 비동기 적으로 관찰 하는데 사용 되었습니다. 그것은 발생 순서에 따른 변화의 흐름을 제공합니다. Object.observe()가 accept type list ["add", "update", "delete", "splice"]와 함께 호출되는 것과 같습니다. 하지만 이 API는 더이상 사용되지 않고 브라우저에서 제거 되었습니다. 대신, 더 일반적인 {{jsxref("Proxy")}} 객체를 사용하세요.

- -

구문

- -
Array.observe(arr, callback)
- -

매개변수

- -
-
arr
-
관찰 할 배열
-
callback
-
이 함수는 변화가 일어날때 마다 다음과 같은 인수와 함께 호출됩니다. -
-
changes
-
변경을 나타내는 각 객체들의 배열입니다. 이 변경 객체들의 프로퍼티 들은: -
    -
  • name: 변경된 프로퍼티의 이름
  • -
  • object: 변경 후 배열
  • -
  • type: 변경 타입을 나타내는 문자. "add", "update", "delete", 또는 "splice" 중 하나.
  • -
  • oldValue: "update" 나 "delete"유형에만 해당합니다. 변경 전 값.
  • -
  • index: "splice"유형에만 해당합니다. 변경이 발생한 인덱스.
  • -
  • removed: "splice"유형에만 해당합니다. 삭제 된 요소들의 배열.
  • -
  • addedCount: "splice"유형에만 해당합니다. 추가 된 요소들의 숫자.
  • -
-
-
-
-
- -

설명

- -

콜백 함수는 arr이 변경 될 때마다 호출되며 발생하는 순서대로 모든 변경 사항의 배열로 호출됩니다

- -
-

Array.prototype.pop() "splice" 변경으로 보고되는 것처럼, 변경은 배열 메서드를 통해 일어납니다. 배열 길이를 변경하지 않는 인덱스 할당 변경은 "update" 변경으로 보고 될 수 있습니다.

-
- -

예제

- -

다른 변경 유형 로깅(Logging)

- -
var arr = ['a', 'b', 'c'];
-
-Array.observe(arr, function(changes) {
-  console.log(changes);
-});
-
-arr[1] = 'B';
-// [{type: 'update', object: <arr>, name: '1', oldValue: 'b'}]
-
-arr[3] = 'd';
-// [{type: 'splice', object: <arr>, index: 3, removed: [], addedCount: 1}]
-
-arr.splice(1, 2, 'beta', 'gamma', 'delta');
-// [{type: 'splice', object: <arr>, index: 1, removed: ['B', 'c'], addedCount: 3}]
-
- -

명세

- -

Strawman proposal specification.

- -

브라우저 호환성

- - - -

{{Compat("javascript.builtins.Array.observe")}}

- -

같이 보기

- - diff --git a/files/ko/web/javascript/reference/global_objects/object/observe/index.html b/files/ko/web/javascript/reference/global_objects/object/observe/index.html deleted file mode 100644 index bf3b004d8c..0000000000 --- a/files/ko/web/javascript/reference/global_objects/object/observe/index.html +++ /dev/null @@ -1,193 +0,0 @@ ---- -title: Object.observe() -slug: Web/JavaScript/Reference/Global_Objects/Object/observe -tags: - - 감시 객체 -translation_of: Archive/Web/JavaScript/Object.observe ---- -
{{JSRef}}
- -

Object.observe() 메소드는 객체의 변화를 비동기로 감시하는데에 사용된다. 이 메소드는 변화들이 발생한 순서대로 그 흐름을 제공한다.

- -

문법

- -
Object.observe(obj, callback[, acceptList])
- -

파라미터

- -
-
obj
-
감시될 객체입니다.
-
callback
-
obj의 변경이 일어났을 때마다 호출될 함수입니다. 다음과 같은 인자를 갖습니다. -
-
changes
-
변경 사항을 나타내는 객체의 배열입니다. 그 객체의 프로퍼티는 다음과 같습니다. -
    -
  • name: 변경된 프로퍼티의 이름입니다.
  • -
  • object: 변경이 일어난 뒤의 객체입니다.
  • -
  • type: 변경의 종류를 의미하는 string입니다. "add", "update", "delete" 중 하나입니다.
  • -
  • oldValue: 변경되기 이전의 값입니다. "update"와 "delete" 타입에만 존재합니다.
  • -
-
-
-
-
acceptList
-
감시할 변경의 종류를 의미하는 리스트입니다.  주어지지 않은 경우, 배열 ["add", "update", "delete", "reconfigure", "setPrototype", "preventExtensions"] 이 이용될 것입니다.
-
- -

설명

- -

callbackobj에 변경이 있을 때마다 실행되며, 모든 변경 사항이 일어난 순서대로 담긴 배열이 전달됩니다.

- -

예제

- -

Logging all six different types

- -
var obj = {
-  foo: 0,
-  bar: 1
-};
-
-Object.observe(obj, function(changes) {
-  console.log(changes);
-});
-
-obj.baz = 2;
-// [{name: 'baz', object: <obj>, type: 'add'}]
-
-obj.foo = 'hello';
-// [{name: 'foo', object: <obj>, type: 'update', oldValue: 0}]
-
-delete obj.baz;
-// [{name: 'baz', object: <obj>, type: 'delete', oldValue: 2}]
-
-Object.defineProperty(obj, 'foo', {writable: false});
-// [{name: 'foo', object: <obj>, type: 'reconfigure'}]
-
-Object.setPrototypeOf(obj, {});
-// [{name: '__proto__', object: <obj>, type: 'setPrototype', oldValue: <prototype>}]
-
-Object.seal(obj);
-// [
-//   {name: 'foo', object: <obj>, type: 'reconfigure'},
-//   {name: 'bar', object: <obj>, type: 'reconfigure'},
-//   {object: <obj>, type: 'preventExtensions'}
-// ]
-
- -

데이터 바인딩

- -
// A user model
-var user = {
-  id: 0,
-  name: 'Brendan Eich',
-  title: 'Mr.'
-};
-
-// Create a greeting for the user
-function updateGreeting() {
-  user.greeting = 'Hello, ' + user.title + ' ' + user.name + '!';
-}
-updateGreeting();
-
-Object.observe(user, function(changes) {
-  changes.forEach(function(change) {
-    // Any time name or title change, update the greeting
-    if (change.name === 'name' || change.name === 'title') {
-      updateGreeting();
-    }
-  });
-});
-
- -

Custom change type

- -
// A point on a 2D plane
-var point = {x: 0, y: 0, distance: 0};
-
-function setPosition(pt, x, y) {
-  // Performing a custom change
-  Object.getNotifier(pt).performChange('reposition', function() {
-    var oldDistance = pt.distance;
-    pt.x = x;
-    pt.y = y;
-    pt.distance = Math.sqrt(x * x + y * y);
-    return {oldDistance: oldDistance};
-  });
-}
-
-Object.observe(point, function(changes) {
-  console.log('Distance change: ' + (point.distance - changes[0].oldDistance));
-}, ['reposition']);
-
-setPosition(point, 3, 4);
-// Distance change: 5
-
- -

Specifications

- -

Strawman proposal for ECMAScript 7.

- -

브라우저 호환성

- -
{{CompatibilityTable}}
- -
- - - - - - - - - - - - - - - - - - - -
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatChrome("36")}}{{CompatNo}} [1]{{CompatNo}} [2]{{CompatOpera("23")}}{{CompatNo}}
-
- -
- - - - - - - - - - - - - - - - - - - - - -
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}{{CompatChrome("36")}}{{CompatNo}} [1]{{CompatNo}} [2]{{CompatOpera("23")}}{{CompatNo}}
-
- -

[1]: See {{bug(800355)}}

- -

[2]: See relevant MS Edge platform status entry

- -

같이 보기

- - -- cgit v1.2.3-54-g00ecf