Languages
[Edit]
PL

JavaScript - Math.exp() - przyk┼éad metody z dokumentacj─ů

3 points
Created by:
Sylwia
1327

Math.exp() jest metod─ů statyczn─ů, kt├│ra przyjmuje tylko jeden parametr i zwraca warto┼Ť─ç funkcji wyk┼éadniczej z zakresu od 0 (wy┼é─ůcznie) do +niesko┼äczono┼Ťci.

// ONLINE-RUNNER:browser;

console.log( Math.exp(      -100 ) ); // 3.720075976020836e-44
console.log( Math.exp(        -1 ) ); // 0.36787944117144233
console.log( Math.exp(         0 ) ); // 1
console.log( Math.exp(         1 ) ); // 2.718281828459045
console.log( Math.exp(       100 ) ); // 2.6881171418161356e+43

console.log( Math.exp( -Infinity ) ); // 0
console.log( Math.exp( +Infinity ) ); // Infinity
console.log( Math.exp(       NaN ) ); // NaN

1. Dokumentacja

SkładniaMath.exp(liczba)
Parametryliczba┬á- liczba ca┼ékowita lub zmiennoprzecinkowa (warto┼Ť─ç pierwotna).
WynikiWarto┼Ť─ç funkcji wyk┼éadniczej liczby z zakresu od 0 (wy┼é─ůcznie) do +Niesko┼äczono┼Ť─ç (warto┼Ť─ç pierwotna). Je┼Ťli warto┼Ťci nie mo┼╝na obliczy─ç, zwracany jest NaN.
Opis

Math.exp() jest metod─ů statyczn─ů, kt├│ra przyjmuje tylko jeden parametr i zwraca warto┼Ť─ç funkcji wyk┼éadniczej.

2. Przykład wykresu w odwróconej konsoli

// ONLINE-RUNNER:browser;

var x1 = -4; // pocz─ůtek wykresu sinusoidalnego
var x2 = +2.8; // koniec wykresu sinusoidalnego

var y1 = -1.0;
var y2 = +10.0;

var xSteps = 25;
var ySteps = 60;

var dx = (x2 - x1) / xSteps; // krok osi x
var dy = (y2 - y1) / ySteps; // krok osi y

function printLine(y1, y2, character) {
	var line = '';
  
  	for(var y = y1; y < y2; y += dy) {
    	line += ' ';
    }
  
    console.log(line + character);
}

for (var rad = x1; rad < x2; rad += dx) {
  	var y = Math.exp(rad);
  
  	if (y <= y1 || y >= y2) {
        console.log(' ');
    } else {
    	printLine(y1, y, '+');
    }
}

3. Przykład rysowania na obiekcie canvas

// ONLINE-RUNNER:browser;

<!doctype html>
<html>
<head>
  <style> #canvas { border: 1px solid black; } </style>
</head>
<body>
  <canvas id="canvas" width="200" height="300"></canvas>
  <script>
    
    var canvas = document.querySelector('#canvas');
    var context = canvas.getContext('2d');

    // zakres dla rysowanej funkcji wykładniczej
    var x1 =  -0.1;
    var x2 =  +5.0;
    var y1 =  -0.1;
    var y2 = +10.0;

    var dx = 0.1;

    var xRange = x2 - x1;
    var yRange = y2 - y1;
    
    var yScale = 0.1;

    function calculatePoint(x) {
      var y = Math.exp(x) * yScale;

      // wykres zostanie odwr├│cony w poziomie z powodu odwr├│conego indeksowania pikseli na ekranie

      var nx = (x - x1) / xRange;       // znormalizowany x
      var ny = 1.0 - (y - y1) / yRange; // znormalizowany y
      
      var point = {
        x: nx * canvas.width,
        y: ny * canvas.height
      };

      return point;
    }

    console.log('x range: <' + x1 + '; ' + x2 + '>');
    console.log('y range: <' + y1 + '; ' + y2 + '>');

    var point = calculatePoint(x1);
    
    context.beginPath();
    context.moveTo(point.x, point.y);

    for (var x = x1 + dx; x < x2; x += dx) {
      point = calculatePoint(x);
      context.lineTo(point.x, point.y);
    }

    point = calculatePoint(x2);
    context.lineTo(point.x, point.y);
    context.stroke();

  </script>
</body>
</html>

Bibliografia

  1. Exponential function - wikipedia

JavaScript - obiekt Math (PL)

Hey ­čĹő
Would you like to know what we do?
  • Dirask is a friendly IT community for learners, professionals and hobbyists to share their knowledge and help each other in extraordinary easy way.
  • We welcome everyone,
    no matter what the experience,
    no matter how basic the question is,
    this community will help you.