 c177363a19
			
		
	
	c177363a19
	
	
	
		
			
			🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
		
			
				
	
	
		
			20 lines
		
	
	
		
			491 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			491 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 'use strict';
 | |
| 
 | |
| var modulo = require('./modulo');
 | |
| var ToNumber = require('./ToNumber');
 | |
| var truncate = require('./truncate');
 | |
| 
 | |
| var isFinite = require('math-intrinsics/isFinite');
 | |
| 
 | |
| // https://262.ecma-international.org/14.0/#sec-toint8
 | |
| 
 | |
| module.exports = function ToInt8(argument) {
 | |
| 	var number = ToNumber(argument);
 | |
| 	if (!isFinite(number) || number === 0) {
 | |
| 		return 0;
 | |
| 	}
 | |
| 	var int = truncate(number);
 | |
| 	var int8bit = modulo(int, 0x100);
 | |
| 	return int8bit >= 0x80 ? int8bit - 0x100 : int8bit;
 | |
| };
 |