logo
eng-flag

Node.js Notları ve İpuçları

İçindekiler

  1. Kurulum ve Yükleme
  2. Modüller
  3. Dosya Sistemi
  4. Akışlar
  5. Olaylar
  6. HTTP Sunucusu
  7. Buffer
  8. Yol
  9. OS
  10. Çocuk Süreci

Kurulum ve Yükleme

Node.js Yükleme

https://nodejs.org adresini ziyaret edin ve işletim sisteminiz için yükleyiciyi indirin.

Node.js ve npm sürümlerini kontrol etme

node --version
npm --version

Modüller

Modül Oluşturma ve Dışa Aktarma

// greet.js
module.exports = {
  sayHello: function(name) {
    return `Merhaba, ${name}!`;
  }
};

Modül İçe Aktarma

const greet = require('./greet');
console.log(greet.sayHello('John')); // Çıktı: Merhaba, John!

Çekirdek Modüller

const fs = require('fs');
const http = require('http');
const path = require('path');

Dosya Sistemi

Bir Dosyayı Okuma

const fs = require('fs');

// Asenkron
fs.readFile('file.txt', 'utf8', (err, data) => {
  if (err) throw err;
  console.log(data);
});

// Senkron
const data = fs.readFileSync('file.txt', 'utf8');
console.log(data);

Bir Dosyaya Yazma

const fs = require('fs');

// Asenkron
fs.writeFile('file.txt', 'Merhaba, Dünya!', (err) => {
  if (err) throw err;
  console.log('Dosya kaydedildi!');
});

// Senkron
fs.writeFileSync('file.txt', 'Merhaba, Dünya!');

Bir Dosyaya Ekleme

const fs = require('fs');

fs.appendFile('file.txt', 'Daha fazla içerik
', (err) => {
  if (err) throw err;
  console.log('İçerik eklendi!');
});

Akışlar

Bir Akıştan Okuma

const fs = require('fs');

const readStream = fs.createReadStream('file.txt', 'utf8');

readStream.on('data', (chunk) => {
  console.log(chunk);
});

readStream.on('end', () => {
  console.log('Okuma tamamlandı');
});

Bir Akışa Yazma

const fs = require('fs');

const writeStream = fs.createWriteStream('file.txt');

writeStream.write('Merhaba, ');
writeStream.write('Dünya!');
writeStream.end();

Akışları Boru Hattına Alma

const fs = require('fs');

const readStream = fs.createReadStream('input.txt');
const writeStream = fs.createWriteStream('output.txt');

readStream.pipe(writeStream);

Olaylar

Bir Olay Verici Oluşturma

const EventEmitter = require('events');

class MyEmitter extends EventEmitter {}

const myEmitter = new MyEmitter();

Olayları Yönetme

myEmitter.on('event', () => {
  console.log('Olay meydana geldi!');
});

myEmitter.emit('event');

HTTP Sunucusu

Basit Bir HTTP Sunucusu Oluşturma

const http = require('http');

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Merhaba, Dünya!');
});

server.listen(3000, () => {
  console.log('Sunucu http://localhost:3000/ adresinde çalışıyor!');
});

Buffer

Bir Buffer Oluşturma

const buf1 = Buffer.alloc(10);
const buf2 = Buffer.from('Merhaba, Dünya!');

Bir Buffer'a Yazma

buf1.write('Merhaba');

Bir Buffer'dan Okuma

console.log(buf1.toString());
console.log(buf2.toString('utf8', 0, 5)); // Çıktı: Merhaba

Yol

Yollarla Çalışma

const path = require('path');

console.log(path.join('/foo', 'bar', 'baz/asdf', 'quux', '..')); 
// Çıktı: /foo/bar/baz/asdf

console.log(path.resolve('foo/bar', '/tmp/file/', '..', 'a/../subfile'));
// Çıktı: /tmp/subfile

console.log(path.extname('index.html')); 
// Çıktı: .html

OS

OS Bilgilerini Alma

const os = require('os');

console.log(os.platform());
console.log(os.arch());
console.log(os.cpus());
console.log(os.totalmem());
console.log(os.freemem());

Çocuk Süreci

Bir Çocuk Süreci Başlatma

const { spawn } = require('child_process');

const ls = spawn('ls', ['-lh', '/usr']);

ls.stdout.on('data', (data) => {
  console.log(`stdout: ${data}`);
});

ls.stderr.on('data', (data) => {
  console.error(`stderr: ${data}`);
});

ls.on('close', (code) => {
  console.log(`çocuk süreci kod ${code} ile kapandı`);
});

Bir Komut Çalıştırma

const { exec } = require('child_process');

exec('cat *.js missing_file | wc -l', (error, stdout, stderr) => {
  if (error) {
    console.error(`exec hatası: ${error}`);
    return;
  }
  console.log(`stdout: ${stdout}`);
  console.error(`stderr: ${stderr}`);
});

2024 © Tüm hakları saklıdır - buraxta.com