Простая библиотека подсветки синтаксиса на чистом JavaScript
<pre class="sh-code" data-lang="язык"> или <code class="sh-code" data-lang="язык">
Пример кода на JavaScript:
// Функция для вычисления факториала
function factorial(n) {
if (n <= 1) {
return 1;
}
return n * factorial(n - 1);
}
// Использование async/await
async function fetchData() {
try {
const response = await fetch('/api/data');
const data = await response.json();
return data;
} catch (error) {
console.error('Ошибка:', error);
return null;
}
}
const numbers = [1, 2, 3, 4, 5];
const doubled = numbers.map(x => x * 2);
console.log(doubled); // [2, 4, 6, 8, 10]
Пример кода на Python:
# Класс для работы с пользователями
class User:
def __init__(self, name, email):
self.name = name
self.email = email
self.is_active = True
def deactivate(self):
self.is_active = False
return f"User {self.name} deactivated"
# Генератор чисел Фибоначчи
def fibonacci(n):
a, b = 0, 1
for _ in range(n):
yield a
a, b = b, a + b
# Использование
numbers = list(fibonacci(10))
print(numbers) # [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
Пример HTML кода:
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Моя страница</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<div class="container">
<h1>Заголовок</h1>
<p>Это параграф с <a href="#">ссылкой</a></p>
<ul>
<li>Элемент списка 1</li>
<li>Элемент списка 2</li>
</ul>
</div>
<script src="script.js"></script>
</body>
</html>
Пример CSS кода:
/* Стили для контейнера */
.container {
max-width: 1200px;
margin: 0 auto;
padding: 2em;
background: #ffffff;
border-radius: 8px;
}
/* Заголовки */
h1 {
color: #333;
font-size: 2em;
margin-bottom: 1em;
}
/* Кнопки */
.button {
display: inline-block;
padding: 0.75em 1.5em;
background: #2196f3;
color: white;
border: none;
border-radius: 4px;
cursor: pointer;
transition: background 0.3s;
}
.button:hover {
background: #1976d2;
}
Пример кода на Java:
// Класс для работы с пользователями
public class User {
private String name;
private String email;
private boolean isActive;
public User(String name, String email) {
this.name = name;
this.email = email;
this.isActive = true;
}
public void deactivate() {
this.isActive = false;
}
public boolean getIsActive() {
return this.isActive;
}
public String getName() {
return this.name;
}
}
// Использование
public class Main {
public static void main(String[] args) {
User user = new User("Иван", "ivan@example.com");
System.out.println("Пользователь создан: " + user.getName());
}
}
Пример использования через JavaScript API:
// Получить элемент и подсветить его
const codeBlock = document.getElementById('my-code');
syntaxHighlighter.highlightElement(codeBlock, 'javascript');
// Или подсветить строку кода
const code = 'function hello() { return "world"; }';
const highlighted = syntaxHighlighter.highlight(code, 'javascript');
document.getElementById('output').innerHTML = highlighted;