オブジェクトの作成
•オブジェクトの直接数量
var o = { foo : "bar" }
•コンストラクター
var o = new Object();
•プロトタイプの継承
var p = Object.create(o);
クラスの継承
JavaScript オブジェクトには独自のプロパティと継承されたプロパティがあります。
•オブジェクト o の属性 x をクエリする場合、まず o の属性 x を検索します。見つからない場合は、x またはプロトタイプが null のオブジェクトが見つかるまで、o のプロトタイプ オブジェクトの x 属性を検索します。 >
•オブジェクトoのx属性に値を代入する際、oが既に自身の属性xを持っている場合は、oに属性xが存在しない場合はxの値を変更し、oに対してx属性を作成して代入します。値•つまり、プロトタイプチェーンはクエリを実行する場合にのみ機能します。
var O = { x : 1 }; function P() { this.y = 2; } P.prototype = O; var t = new P(); console.log(t); console.log('x' in t);//true console.log(t.hasOwnProperty('x'));//false
オブジェクトのプロパティ
•オブジェクトのプロパティをトラバースする
for..in を使用してオブジェクトのプロパティを反復処理できます
したがって、hasOwnProperty を使用すると、それがオブジェクト独自のプロパティであるかどうかを判断できます。
•オブジェクト属性の特徴
Object.getOwnPropertyDescriptor() を使用して、オブジェクトの特定のプロパティの記述子を取得します
たとえば
var o = { foo : 'bar' } Object.defineProperty(o, "foo", { writable : false }); o.foo = 'world'; console.log(o.foo);//仍然输出bar
たとえば
配列の長さなどの属性の列挙は false なので、
for (p in Array) { console.log(p); }
構成可能性 (configurable) は、変更可能なプロパティの構成可能性と列挙可能性を示します
これらの構成プロパティは、Object.defineProperties を使用して定義できます。
Object.defineProperty(o, "foo", { 書き込み可能 : false });
Set はオブジェクトのプロパティを設定するメソッドを表します
var book = { _year: 2004, edition: 1 }; Object.defineProperty(book, "year", { get: function () { console.log('get year'); return this._year; }, set: function (newValue) { console.log('set year'); if (newValue > 2004) { this._year = newValue; this.edition += newValue - 2004; } } }); book.year = 2005;//控制台输出‘set year' console.log(book.year);//控制台输出‘get year'和year的值
オブジェクトメソッド
toString はオブジェクトを文字列に変換します。デフォルトの変換は [object Object] のようなものになるため、json 形式に変換する必要がある場合は、JSON.stringifyを使用できます。
valueOf は、オブジェクトを他の型に変換する必要がある場合に使用されます。繰り返しになりますが、デフォルトの変換については特に言うことはありません。
実行可能オブジェクト
function bar(o) { var f = function() { return "Hello World!"; } o.__proto__ = f.__proto__; f.__proto__ = o; return f; } var o = { x: 5 }; var foo = bar(o); console.log(foo()); console.log(foo.x); console.log(typeof foo);//function

去掉重复并排序的方法:1、使用“Array.from(new Set(arr))”或者“[…new Set(arr)]”语句,去掉数组中的重复元素,返回去重后的新数组;2、利用sort()对去重数组进行排序,语法“去重数组.sort()”。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于Symbol类型、隐藏属性及全局注册表的相关问题,包括了Symbol类型的描述、Symbol不会隐式转字符串等问题,下面一起来看一下,希望对大家有帮助。

怎么制作文字轮播与图片轮播?大家第一想到的是不是利用js,其实利用纯CSS也能实现文字轮播与图片轮播,下面来看看实现方法,希望对大家有所帮助!

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于对象的构造函数和new操作符,构造函数是所有对象的成员方法中,最早被调用的那个,下面一起来看一下吧,希望对大家有帮助。

方法:1、利用“点击元素对象.unbind("click");”方法,该方法可以移除被选元素的事件处理程序;2、利用“点击元素对象.off("click");”方法,该方法可以移除通过on()方法添加的事件处理程序。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于面向对象的相关问题,包括了属性描述符、数据描述符、存取描述符等等内容,下面一起来看一下,希望对大家有帮助。

foreach不是es6的方法。foreach是es3中一个遍历数组的方法,可以调用数组的每个元素,并将元素传给回调函数进行处理,语法“array.forEach(function(当前元素,索引,数组){...})”;该方法不处理空数组。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于BOM操作的相关问题,包括了window对象的常见事件、JavaScript执行机制等等相关内容,下面一起来看一下,希望对大家有帮助。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

Dreamweaver Mac版
ビジュアル Web 開発ツール

ホットトピック



