# Yeni Başlayanlar İçin 6 Yararlı JavaScript İpucu

## **Ternary Operator**

Ternary operatorü (`? :`), if-else ifadelerinin kısa bir yoludur. Örneğin:

```javascript
let x = 5;
let y = (x > 0) ? "positive" : "negative";
console.log(y); // "positive"
```

## **Template Literals**

Template literals ( \`), değişkenleri ve ifadeleri kolayca birleştirmenizi sağlar. Örneğin:

```javascript
let name = "John";
let age = 30;
console.log(`My name is ${name} and I am ${age} years old.`);
// "My name is John and I am 30 years old."
```

## **Nullish Coalescing**

Nullish coalescing (`??`), bir değişkenin `undefined` veya `null` olup olmadığını kontrol etmenizi sağlar. Örneğin:

```javascript
let x;
let y = x ?? "default";
console.log(y); // "default"
```

## **Converting string to number**

Bir string’i sayıya dönüştürmek için `Number()` fonksiyonunu veya `+` işaretini kullanabilirsiniz. Örneğin:

```javascript
let x = "5";
let y = Number(x);
console.log(y); // 5

let z = +x;
console.log(z); // 5
```

## **Array/Object Destructuring**

**Array Destructuring**

Dizi destructuring, bir dizinin elemanlarını kolayca ayıklamanızı sağlar. Örneğin:

```javascript
let numbers = [1, 2, 3];
let [firstNumber, secondNumber] = numbers;
console.log(firstNumber); // 1
console.log(secondNumber); // 2
```

Bu örnekte `numbers` dizisinin ilk iki elemanını `firstNumber` ve `secondNumber` değişkenlerine atadık.

**Object Destructuring**

Nesne destructuring ise bir nesnenin özelliklerini kolayca ayıklamanızı sağlar. Örneğin:

```javascript
let person = {name: "John", age: 30};
let {name, age} = person;
console.log(name); // "John"
console.log(age); // 30
```

Bu örnekte `person` nesnesinin `name` ve `age` özelliklerini `name` ve `age` değişkenlerine atadık.

## **Implicit Boolean Coercion**

JavaScript’te bazı değerler doğal olarak boolean’a dönüştürülür (coerced). Bu değerler genellikle koşullu ifadelerde kullanılır ve doğru veya yanlış olarak değerlendirilirler. Örneğin:

```javascript
if ("") {
    console.log("true");
} else {
    console.log("false"); // false (empty string is falsy)
}

if ("hello") {
    console.log("true"); // true (non-empty string is truthy)
} else {
    console.log("false");
}
```

Bu örnekte ilk koşulda boş bir string (`""`) kullanıldı. Boş bir string `falsy` olarak kabul edilir ve bu nedenle `false` yazdırılır. İkinci koşulda ise dolu bir string (`"hello"`) kullanıldı. Dolu bir string `truthy` olarak kabul edilir ve bu nedenle `true` yazdırılır.
