{"id":33528,"date":"2025-11-04T01:41:34","date_gmt":"2025-11-03T22:41:34","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=33528"},"modified":"2025-11-04T01:41:34","modified_gmt":"2025-11-03T22:41:34","slug":"object-values-nesne-degerlerine-erismek","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/","title":{"rendered":"Object.values(): Nesne De\u011ferlerine Eri\u015fmek"},"content":{"rendered":"<p><body><\/p>\n<p>JavaScript&#8217;te nesneler, verileri anahtar-de\u011fer \u00e7iftleri halinde d\u00fczenlemek i\u00e7in temel yap\u0131 ta\u015flar\u0131d\u0131r. Uygulamalar\u0131m\u0131zda s\u0131kl\u0131kla bu nesnelerin i\u00e7indeki verilere eri\u015fmemiz, onlar\u0131 i\u015flememiz veya ba\u015fka bir veri yap\u0131s\u0131na d\u00f6n\u00fc\u015ft\u00fcrmemiz gerekir. Geleneksel olarak, bu t\u00fcr i\u015flemler i\u00e7in <code>for...in<\/code> d\u00f6ng\u00fcs\u00fc veya <code>Object.keys()<\/code> gibi y\u00f6ntemler kullan\u0131l\u0131rd\u0131. Ancak ES2017 ile birlikte hayat\u0131m\u0131za giren <code>Object.values()<\/code> ve <code>Object.entries()<\/code> y\u00f6ntemleri, bu g\u00f6revleri \u00e7ok daha modern, okunabilir ve g\u00fcvenli bir \u015fekilde yapmam\u0131z\u0131 sa\u011flayan g\u00fc\u00e7l\u00fc ara\u00e7lar sunar.<\/p>\n<p>Bu rehberde, <code>Object.values()<\/code> ve <code>Object.entries()<\/code> y\u00f6ntemlerinin ne i\u015fe yarad\u0131\u011f\u0131n\u0131, nas\u0131l kullan\u0131ld\u0131\u011f\u0131n\u0131, pratik \u00f6rneklerle senaryolar\u0131n\u0131 ve ne zaman hangisini tercih etmeniz gerekti\u011fini detayl\u0131 bir \u015fekilde inceleyece\u011fiz. Ayr\u0131ca, bu y\u00f6ntemlerin sa\u011flad\u0131\u011f\u0131 avantajlar\u0131 ve JavaScript geli\u015ftirme s\u00fcrecinizdeki yerini de ele alaca\u011f\u0131z.<\/p>\n<h2>Object.values(): Nesne De\u011ferlerine Eri\u015fmek<\/h2>\n<p><code>Object.values()<\/code> y\u00f6ntemi, bir nesnenin kendi numaraland\u0131r\u0131labilir (enumerable) string anahtarl\u0131 \u00f6zelliklerinin de\u011ferlerinden olu\u015fan bir dizi d\u00f6nd\u00fcr\u00fcr. Bu, bir nesnenin sadece de\u011ferlerine odaklanman\u0131z gerekti\u011finde olduk\u00e7a kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n<h3>Kullan\u0131m ve S\u00f6zdizimi<\/h3>\n<p><code>Object.values()<\/code> y\u00f6ntemi, arg\u00fcman olarak bir nesne al\u0131r ve bu nesnenin de\u011ferlerini i\u00e7eren yeni bir dizi d\u00f6nd\u00fcr\u00fcr. Orijinal nesne \u00fczerinde herhangi bir de\u011fi\u015fiklik yapmaz.<\/p>\n<pre><code class=\"language-javascript\">\nconst user = {\n    name: \"Alice\",\n    age: 30,\n    city: \"New York\"\n};\n\nconst userValues = Object.values(user);\nconsole.log(userValues); \/\/ \u00c7\u0131kt\u0131: [\"Alice\", 30, \"New York\"]\n<\/code><\/pre>\n<p>G\u00f6rd\u00fc\u011f\u00fcn\u00fcz gibi, <code>user<\/code> nesnesinin anahtarlar\u0131 g\u00f6z ard\u0131 edilerek sadece de\u011ferleri bir dizi olarak elde edildi.<\/p>\n<h3>Pratik Kullan\u0131m Senaryolar\u0131<\/h3>\n<p><code>Object.values()<\/code>, \u00f6zellikle a\u015fa\u011f\u0131daki gibi durumlarda olduk\u00e7a i\u015fe yarar:<\/p>\n<h4>1. Toplam De\u011fer Hesaplama<\/h4>\n<p>Bir nesnenin i\u00e7indeki say\u0131sal de\u011ferlerin toplam\u0131n\u0131 veya ortalamas\u0131n\u0131 almak istedi\u011finizde <code>Object.values()<\/code> ve <code>reduce()<\/code> y\u00f6ntemlerini birle\u015ftirebilirsiniz.<\/p>\n<pre><code class=\"language-javascript\">\nconst monthlySales = {\n    january: 1200,\n    february: 1500,\n    march: 1000,\n    april: 1800\n};\n\nconst totalSales = Object.values(monthlySales).reduce((acc, current) => acc + current, 0);\nconsole.log(<code>Toplam Sat\u0131\u015f: ${totalSales} TL<\/code>); \/\/ \u00c7\u0131kt\u0131: Toplam Sat\u0131\u015f: 5500 TL\n<\/code><\/pre>\n<h4>2. Belirli Bir De\u011ferin Var Olup Olmad\u0131\u011f\u0131n\u0131 Kontrol Etme<\/h4>\n<p>Bir nesnenin de\u011ferleri aras\u0131nda belirli bir \u00f6\u011fenin olup olmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in <code>Object.values()<\/code> ile birlikte <code>includes()<\/code> veya <code>some()<\/code> gibi dizi y\u00f6ntemlerini kullanabilirsiniz.<\/p>\n<pre><code class=\"language-javascript\">\nconst productDetails = {\n    id: \"PROD123\",\n    name: \"Ak\u0131ll\u0131 Telefon\",\n    category: \"Elektronik\",\n    inStock: true\n};\n\nconst hasElectronicsCategory = Object.values(productDetails).includes(\"Elektronik\");\nconsole.log(<code>Elektronik kategorisi mevcut mu? ${hasElectronicsCategory}<\/code>); \/\/ \u00c7\u0131kt\u0131: Elektronik kategorisi mevcut mu? true\n\nconst hasFalseValue = Object.values(productDetails).some(value => value === false);\nconsole.log(<code>Nesnede 'false' de\u011feri var m\u0131? ${hasFalseValue}<\/code>); \/\/ \u00c7\u0131kt\u0131: Nesnede 'false' de\u011feri var m\u0131? false\n<\/code><\/pre>\n<h4>3. De\u011ferleri D\u00f6n\u00fc\u015ft\u00fcrme veya Filtreleme<\/h4>\n<p>Nesne de\u011ferlerini bir diziye d\u00f6n\u00fc\u015ft\u00fcrd\u00fckten sonra, <code>map()<\/code>, <code>filter()<\/code> gibi g\u00fc\u00e7l\u00fc dizi y\u00f6ntemlerini kullanarak \u00fczerinde \u00e7e\u015fitli i\u015flemler yapabilirsiniz.<\/p>\n<pre><code class=\"language-javascript\">\nconst studentScores = {\n    math: 85,\n    science: 92,\n    history: 78,\n    art: 95\n};\n\n\/\/ Sadece 90 ve \u00fczeri puanlar\u0131 al\nconst highScores = Object.values(studentScores).filter(score => score >= 90);\nconsole.log(<code>Y\u00fcksek Puanlar: ${highScores}<\/code>); \/\/ \u00c7\u0131kt\u0131: Y\u00fcksek Puanlar: 92,95\n\n\/\/ T\u00fcm puanlar\u0131 5 puan art\u0131r\nconst updatedScores = Object.values(studentScores).map(score => score + 5);\nconsole.log(<code>G\u00fcncellenmi\u015f Puanlar: ${updatedScores}<\/code>); \/\/ \u00c7\u0131kt\u0131: G\u00fcncellenmi\u015f Puanlar: 90,97,83,100\n<\/code><\/pre>\n<h2>Object.entries(): Anahtar-De\u011fer \u00c7iftlerine Eri\u015fmek<\/h2>\n<p><code>Object.entries()<\/code> y\u00f6ntemi, bir nesnenin kendi numaraland\u0131r\u0131labilir string anahtarl\u0131 \u00f6zelliklerinin <code>[anahtar, de\u011fer]<\/code> \u00e7iftlerinden olu\u015fan bir dizi d\u00f6nd\u00fcr\u00fcr. Bu y\u00f6ntem, hem anahtarlara hem de de\u011ferlere ayn\u0131 anda eri\u015fmeniz gerekti\u011finde vazge\u00e7ilmezdir.<\/p>\n<h3>Kullan\u0131m ve S\u00f6zdizimi<\/h3>\n<p><code>Object.entries()<\/code> y\u00f6ntemi, arg\u00fcman olarak bir nesne al\u0131r ve her biri <code>[anahtar, de\u011fer]<\/code> \u015feklinde iki elemanl\u0131 bir dizi olan dizilerden olu\u015fan yeni bir dizi d\u00f6nd\u00fcr\u00fcr.<\/p>\n<pre><code class=\"language-javascript\">\nconst car = {\n    brand: \"Toyota\",\n    model: \"Corolla\",\n    year: 2020\n};\n\nconst carEntries = Object.entries(car);\nconsole.log(carEntries);\n\/* \u00c7\u0131kt\u0131:\n[\n    [\"brand\", \"Toyota\"],\n    [\"model\", \"Corolla\"],\n    [\"year\", 2020]\n]\n*\/\n<\/code><\/pre>\n<p><code>Object.entries()<\/code>&#8216;nin d\u00f6nd\u00fcrd\u00fc\u011f\u00fc bu yap\u0131, <code>for...of<\/code> d\u00f6ng\u00fcs\u00fc ile birlikte dizi destructuring (yap\u0131 bozma) kullanarak kolayca iterate edilebilir.<\/p>\n<h3>Pratik Kullan\u0131m Senaryolar\u0131<\/h3>\n<p><code>Object.entries()<\/code>, nesne verileri \u00fczerinde daha karma\u015f\u0131k i\u015flemler yapmak i\u00e7in idealdir:<\/p>\n<h4>1. Anahtar ve De\u011ferleri Birlikte \u0130\u015fleme (for&#8230;of ile)<\/h4>\n<p>Nesnenin her bir anahtar-de\u011fer \u00e7iftini ayr\u0131 ayr\u0131 ele alman\u0131z gerekti\u011finde <code>for...of<\/code> d\u00f6ng\u00fcs\u00fc ile destructuring en zarif \u00e7\u00f6z\u00fcm\u00fc sunar.<\/p>\n<pre><code class=\"language-javascript\">\nconst userInfo = {\n    firstName: \"John\",\n    lastName: \"Doe\",\n    email: \"john.doe@example.com\"\n};\n\nfor (const [key, value] of Object.entries(userInfo)) {\n    console.log(<code>${key}: ${value}<\/code>);\n}\n\/* \u00c7\u0131kt\u0131:\nfirstName: John\nlastName: Doe\nemail: john.doe@example.com\n*\/\n<\/code><\/pre>\n<h4>2. Nesneyi Filtreleme veya Yeniden Olu\u015fturma<\/h4>\n<p>Belirli ko\u015fullara uyan anahtar-de\u011fer \u00e7iftlerini se\u00e7erek yeni bir nesne olu\u015fturmak i\u00e7in <code>Object.entries()<\/code>, <code>filter()<\/code> ve <code>Object.fromEntries()<\/code> y\u00f6ntemlerini birle\u015ftirebilirsiniz.<\/p>\n<pre><code class=\"language-javascript\">\nconst productConfig = {\n    name: \"Widget\",\n    version: \"1.0.0\",\n    isActive: true,\n    _internalId: \"abc123xyz\" \/\/ Dahili bir \u00f6zellik\n};\n\n\/\/ Sadece g\u00f6r\u00fcnen (public) \u00f6zellikleri i\u00e7eren yeni bir nesne olu\u015ftur\nconst publicConfig = Object.fromEntries(\n    Object.entries(productConfig).filter(([key, value]) => !key.startsWith('_'))\n);\nconsole.log(publicConfig); \/\/ \u00c7\u0131kt\u0131: { name: \"Widget\", version: \"1.0.0\", isActive: true }\n\n\/\/ Sadece string de\u011ferleri i\u00e7eren yeni bir nesne olu\u015ftur\nconst stringValuesOnly = Object.fromEntries(\n    Object.entries(productConfig).filter(([key, value]) => typeof value === 'string')\n);\nconsole.log(stringValuesOnly); \/\/ \u00c7\u0131kt\u0131: { name: \"Widget\", version: \"1.0.0\", _internalId: \"abc123xyz\" }\n<\/code><\/pre>\n<p><code>Object.fromEntries()<\/code>, <code>Object.entries()<\/code>&#8216;nin tersidir ve bir anahtar-de\u011fer \u00e7iftleri dizisinden yeni bir nesne olu\u015fturur. Bu ikili, nesne d\u00f6n\u00fc\u015f\u00fcmleri i\u00e7in \u00e7ok g\u00fc\u00e7l\u00fc bir kombinasyondur.<\/p>\n<h4>3. Nesneyi Map Yap\u0131s\u0131na D\u00f6n\u00fc\u015ft\u00fcrme<\/h4>\n<p>JavaScript&#8217;in <code>Map<\/code> veri yap\u0131s\u0131, anahtar-de\u011fer \u00e7iftlerini saklamak i\u00e7in tasarlanm\u0131\u015ft\u0131r ve nesnelerden farkl\u0131 olarak anahtarlar\u0131n s\u0131ras\u0131n\u0131 garanti eder ve herhangi bir veri t\u00fcr\u00fcn\u00fc anahtar olarak kullanabilir. Bir nesneyi kolayca <code>Map<\/code>&#8216;e d\u00f6n\u00fc\u015ft\u00fcrmek i\u00e7in <code>Object.entries()<\/code>&#8216;i kullanabilirsiniz.<\/p>\n<pre><code class=\"language-javascript\">\nconst settings = {\n    theme: \"dark\",\n    notifications: true,\n    language: \"en\"\n};\n\nconst settingsMap = new Map(Object.entries(settings));\nconsole.log(settingsMap); \/\/ \u00c7\u0131kt\u0131: Map(3) { 'theme' => 'dark', 'notifications' => true, 'language' => 'en' }\nconsole.log(settingsMap.get('theme')); \/\/ \u00c7\u0131kt\u0131: dark\n<\/code><\/pre>\n<h2>Object.values() ve Object.entries() Kar\u015f\u0131la\u015ft\u0131rmas\u0131: Ne Zaman Hangisini Kullanmal\u0131?<\/h2>\n<p>Her iki y\u00f6ntem de nesnelerle \u00e7al\u0131\u015fmak i\u00e7in harika olsa da, farkl\u0131 senaryolar i\u00e7in optimize edilmi\u015flerdir. Do\u011fru y\u00f6ntemi se\u00e7mek, kodunuzun daha okunabilir ve verimli olmas\u0131n\u0131 sa\u011flar.<\/p>\n<p><strong><code>Object.values()<\/code> ne zaman kullan\u0131l\u0131r?<\/strong><\/p>\n<ul>\n<li>Sadece nesnenin de\u011ferlerine ihtiyac\u0131n\u0131z oldu\u011funda ve anahtarlar \u00f6nemli olmad\u0131\u011f\u0131nda.<\/li>\n<li>De\u011ferler \u00fczerinde toplama, ortalama alma, filtreleme, d\u00f6n\u00fc\u015ft\u00fcrme gibi dizi tabanl\u0131 i\u015flemler yapman\u0131z gerekti\u011finde.<\/li>\n<li>De\u011ferlerin belirli bir ko\u015fulu sa\u011flay\u0131p sa\u011flamad\u0131\u011f\u0131n\u0131 h\u0131zl\u0131ca kontrol etmek istedi\u011finizde.<\/li>\n<\/ul>\n<p><strong><code>Object.entries()<\/code> ne zaman kullan\u0131l\u0131r?<\/strong><\/p>\n<ul>\n<li>Hem anahtarlara hem de de\u011ferlere ayn\u0131 anda eri\u015fmeniz veya bunlar\u0131 birlikte i\u015flemeniz gerekti\u011finde.<\/li>\n<li>Nesneyi iterate ederken her bir anahtar-de\u011fer \u00e7ifti \u00fczerinde ko\u015fullu i\u015flemler yapman\u0131z gerekti\u011finde.<\/li>\n<li>Nesneyi filtreleyerek veya de\u011fi\u015ftirerek yeni bir nesne olu\u015fturmak istedi\u011finizde (<code>Object.fromEntries()<\/code> ile birlikte).<\/li>\n<li>Nesneyi ba\u015fka bir anahtar-de\u011fer veri yap\u0131s\u0131na (\u00f6rne\u011fin <code>Map<\/code>) d\u00f6n\u00fc\u015ft\u00fcrmek istedi\u011finizde.<\/li>\n<li>HTML elementlerinin veri \u00f6zelliklerini (<code>data-*<\/code>) dinamik olarak i\u015flerken.<\/li>\n<\/ul>\n<h3>Di\u011fer Nesne \u0130terasyon Y\u00f6ntemleriyle \u0130li\u015fkisi<\/h3>\n<p>Bu y\u00f6ntemler, <code>Object.keys()<\/code> ile benzer bir amaca hizmet eder ancak farkl\u0131 \u00e7\u0131kt\u0131lar sunar:<\/p>\n<ul>\n<li><code>Object.keys(obj)<\/code>: Nesnenin anahtarlar\u0131n\u0131 i\u00e7eren bir dizi d\u00f6nd\u00fcr\u00fcr.<\/li>\n<li><code>Object.values(obj)<\/code>: Nesnenin de\u011ferlerini i\u00e7eren bir dizi d\u00f6nd\u00fcr\u00fcr.<\/li>\n<li><code>Object.entries(obj)<\/code>: Nesnenin <code>[anahtar, de\u011fer]<\/code> \u00e7iftlerini i\u00e7eren bir dizi d\u00f6nd\u00fcr\u00fcr.<\/li>\n<\/ul>\n<p>Geleneksel <code>for...in<\/code> d\u00f6ng\u00fcs\u00fcne g\u00f6re bu modern y\u00f6ntemlerin avantajlar\u0131 \u015funlard\u0131r:<\/p>\n<ul>\n<li><strong>G\u00fcvenlik:<\/strong> Sadece nesnenin kendi \u00f6zelliklerini (own properties) d\u00f6nd\u00fcr\u00fcrler, prototip zincirindeki \u00f6zellikleri i\u00e7ermezler. <code>for...in<\/code> kullan\u0131rken <code>hasOwnProperty()<\/code> ile kontrol yapmak gerekebilir.<\/li>\n<li><strong>S\u0131ra Garantisi:<\/strong> ES2015&#8217;ten itibaren, string anahtarlar i\u00e7in eklenme s\u0131ras\u0131na g\u00f6re bir s\u0131ra garantisi sunarlar (say\u0131sal anahtarlar \u00f6nce gelir). <code>for...in<\/code> d\u00f6ng\u00fcs\u00fcnde bu garanti daha zay\u0131ft\u0131r.<\/li>\n<li><strong>Dizi Y\u00f6ntemleriyle Entegrasyon:<\/strong> Do\u011frudan dizi d\u00f6nd\u00fcrd\u00fckleri i\u00e7in <code>map()<\/code>, <code>filter()<\/code>, <code>reduce()<\/code> gibi g\u00fc\u00e7l\u00fc dizi y\u00f6ntemleriyle zincirlenebilirler, bu da daha fonksiyonel ve okunabilir kod yazmay\u0131 sa\u011flar.<\/li>\n<\/ul>\n<h2>Sonu\u00e7 ve S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h2>\n<p><code>Object.values()<\/code> ve <code>Object.entries()<\/code>, modern JavaScript geli\u015ftirmenin vazge\u00e7ilmez ara\u00e7lar\u0131d\u0131r. Nesnelerin i\u00e7eri\u011fini daha esnek, g\u00fcvenli ve okunabilir bir \u015fekilde manip\u00fcle etmemizi sa\u011flarlar. Hangi y\u00f6ntemi kullanaca\u011f\u0131n\u0131z, anahtarlara m\u0131, de\u011ferlere mi yoksa her ikisine birden mi ihtiyac\u0131n\u0131z oldu\u011funa ba\u011fl\u0131d\u0131r. Bu y\u00f6ntemleri etkin bir \u015fekilde kullanarak, JavaScript kodunuzu daha fonksiyonel ve s\u00fcrd\u00fcr\u00fclebilir hale getirebilirsiniz.<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h3>\n<h3>H3 Object.values() ve Object.entries() hangi JavaScript versiyonunda tan\u0131t\u0131ld\u0131?<\/h3>\n<p>Bu y\u00f6ntemler, <strong>ES2017 (ECMAScript 2017)<\/strong> ile tan\u0131t\u0131lm\u0131\u015ft\u0131r. Bu nedenle, eski taray\u0131c\u0131lar\u0131 veya Node.js versiyonlar\u0131n\u0131 hedefliyorsan\u0131z, uyumluluk i\u00e7in polyfill kullanman\u0131z gerekebilir.<\/p>\n<h3>H3 Bu y\u00f6ntemler sadece nesnenin kendi \u00f6zelliklerini mi d\u00f6nd\u00fcr\u00fcr, yoksa prototip zincirindekileri de mi?<\/h3>\n<p>Her iki y\u00f6ntem de sadece nesnenin <strong>kendi numaraland\u0131r\u0131labilir (enumerable) string anahtarl\u0131 \u00f6zelliklerini<\/strong> d\u00f6nd\u00fcr\u00fcr. Prototip zincirindeki \u00f6zellikleri veya numaraland\u0131r\u0131lamayan (non-enumerable) \u00f6zellikleri dikkate almazlar. Bu, <code>for...in<\/code> d\u00f6ng\u00fcs\u00fcne g\u00f6re \u00f6nemli bir g\u00fcvenlik ve \u00f6ng\u00f6r\u00fclebilirlik avantaj\u0131d\u0131r.<\/p>\n<h3>H3 D\u00f6nd\u00fcr\u00fclen dizideki \u00f6zelliklerin s\u0131ras\u0131 garanti mi?<\/h3>\n<p>Evet, ES2015&#8217;ten itibaren JavaScript spesifikasyonu, string anahtarl\u0131 \u00f6zelliklerin <code>Object.keys()<\/code>, <code>Object.values()<\/code> ve <code>Object.entries()<\/code> taraf\u0131ndan eklenme s\u0131ras\u0131na g\u00f6re d\u00f6nd\u00fcr\u00fclece\u011fini garanti eder. Say\u0131sal anahtarlar her zaman \u00f6nce, artan s\u0131rada gelir.<\/p>\n<h3>H3 Sembol anahtarlar\u0131n\u0131 da d\u00f6nd\u00fcr\u00fcrler mi?<\/h3>\n<p>Hay\u0131r, <code>Object.values()<\/code> ve <code>Object.entries()<\/code> sadece <strong>string anahtarl\u0131<\/strong> \u00f6zellikleri d\u00f6nd\u00fcr\u00fcr. Sembol anahtarl\u0131 \u00f6zellikleri almak i\u00e7in <code>Object.getOwnPropertySymbols()<\/code> y\u00f6ntemini kullanman\u0131z gerekir.<\/p>\n<h3>H3 Performans a\u00e7\u0131s\u0131ndan Object.values()\/entries() ile for&#8230;in aras\u0131nda b\u00fcy\u00fck bir fark var m\u0131?<\/h3>\n<p>\u00c7o\u011fu durumda, tipik boyutlardaki nesneler i\u00e7in performans fark\u0131 ihmal edilebilir d\u00fczeydedir ve kodun okunabilirli\u011fi ile g\u00fcvenli\u011fi daha \u00f6nceliklidir. \u00c7ok b\u00fcy\u00fck nesnelerle \u00e7al\u0131\u015f\u0131rken veya performans kritik senaryolarda k\u00fc\u00e7\u00fck farklar olabilir, ancak bu nadirdir ve genellikle mikro-optimizasyona girmeden \u00f6nce ba\u015fka darbo\u011fazlara bakmak daha mant\u0131kl\u0131d\u0131r.<\/p>\n<h3>H3 Neden for&#8230;in yerine Object.values() veya Object.entries() kullanmal\u0131y\u0131m?<\/h3>\n<p><code>Object.values()<\/code> ve <code>Object.entries()<\/code>, <code>for...in<\/code> d\u00f6ng\u00fcs\u00fcne g\u00f6re birka\u00e7 \u00f6nemli avantaj sunar:<\/p>\n<ul>\n<li>Sadece nesnenin kendi \u00f6zelliklerini i\u015fler, prototip zincirindeki \u00f6zellikleri atlar. Bu, istenmeyen yan etkileri \u00f6nler.<\/li>\n<li>D\u00f6nd\u00fcrd\u00fckleri diziler \u00fczerinde <code>map()<\/code>, <code>filter()<\/code>, <code>reduce()<\/code> gibi dizi y\u00f6ntemlerini do\u011frudan kullanabilirsiniz.<\/li>\n<li>\u00d6zelliklerin s\u0131ras\u0131 daha \u00f6ng\u00f6r\u00fclebilirdir.<\/li>\n<li>Kodunuzu daha modern ve fonksiyonel bir stil ile yazman\u0131za olanak tan\u0131r.<\/li>\n<\/ul>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"JavaScript&#8217;te nesneler, verileri anahtar-de\u011fer \u00e7iftleri halinde d\u00fczenlemek i\u00e7in temel yap\u0131 ta\u015flar\u0131d\u0131r. Uygulamalar\u0131m\u0131zda s\u0131kl\u0131kla bu nes","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-33528","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Object.values(): Nesne De\u011ferlerine Eri\u015fmek - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Object.values(): Nesne De\u011ferlerine Eri\u015fmek\" \/>\n<meta property=\"og:description\" content=\"JavaScript&#039;te nesneler, verileri anahtar-de\u011fer \u00e7iftleri halinde d\u00fczenlemek i\u00e7in temel yap\u0131 ta\u015flar\u0131d\u0131r. Uygulamalar\u0131m\u0131zda s\u0131kl\u0131kla bu nes\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-03T22:41:34+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Object.values(): Nesne De\u011ferlerine Eri\u015fmek\",\"datePublished\":\"2025-11-03T22:41:34+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/\"},\"wordCount\":1378,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/\",\"name\":\"Object.values(): Nesne De\u011ferlerine Eri\u015fmek - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-11-03T22:41:34+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Object.values(): Nesne De\u011ferlerine Eri\u015fmek\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Object.values(): Nesne De\u011ferlerine Eri\u015fmek - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/","og_locale":"tr_TR","og_type":"article","og_title":"Object.values(): Nesne De\u011ferlerine Eri\u015fmek","og_description":"JavaScript'te nesneler, verileri anahtar-de\u011fer \u00e7iftleri halinde d\u00fczenlemek i\u00e7in temel yap\u0131 ta\u015flar\u0131d\u0131r. Uygulamalar\u0131m\u0131zda s\u0131kl\u0131kla bu nes","og_url":"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-11-03T22:41:34+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"9 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Object.values(): Nesne De\u011ferlerine Eri\u015fmek","datePublished":"2025-11-03T22:41:34+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/"},"wordCount":1378,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/","url":"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/","name":"Object.values(): Nesne De\u011ferlerine Eri\u015fmek - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-11-03T22:41:34+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/object-values-nesne-degerlerine-erismek\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Object.values(): Nesne De\u011ferlerine Eri\u015fmek"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33528","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=33528"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33528\/revisions"}],"predecessor-version":[{"id":33529,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33528\/revisions\/33529"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=33528"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=33528"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=33528"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}