const
, то всегда let
. Потому как let
используется в уникальном scope
. А вообще неплохо рассказано тут (в новой редакции).var
:{
var value = 1;
}
console.log(value); // 1
let
(const
):{
let value = 1;
}
console.log(value); // ReferenceError: value is not defined
if
.function dispatch<T>(key: DispatchKey<T>, value: DispatchValue<T>): void;
function dispatch<T>(keys: DispatchKey<T>[], iterator: (key: DispatchKey<T>) => DispatchValue<T>): void;
function dispatch<T>(
keyOrKeys: DispatchKey<T> | DispatchKey<T>[],
valueOrIterator: DispatchValue<T> | ((key: DispatchKey<T>) => DispatchValue<T>)
): void {
if (Array.isArray(keyOrKeys) && typeof valueOrIterator === 'function') {
setState((prev) => {
const updated = keyOrKeys.map((key) => valueOrIterator(key));
console.log(updated);
return prev;
});
} else {
setState((prev) => ({
...prev,
[keyOrKeys]: valueOrIterator,
}));
}
}
class MyJson
{
private array $data;
public function __construct(array $array)
{
$this->data = $array;
}
public function __call(string $name, array $arguments)
{
$action = substr($name, 0, 3);
$property = strtolower(substr($name, 3));
switch ($action) {
case 'get':
return $this->data[$property ] ?? null;
case 'set':
$this->data[$property] = $arguments[0];
break;
}
}
public function __set(string $name, $value)
{
$this->data[$name] = $value;
}
public function __get(string $name)
{
return array_key_exists($name, $this->data)) ? $this->data[$name] : null;
}
public function __isset($name): bool
{
return isset($this->data[$name]);
}
public function __unset($name): void
{
unset($this->data[$name]);
}
}
$json = new MyJson(json_decode($json, true));
echo $json->name;
$json->name = 'test';
echo $json->getName();
$json->setName('test2');
echo $json->name;
$term = get_queried_object();
$taxonomie_name = $term->taxonomy;
$taxonomy_object = get_taxonomy($taxonomie_name);
$related_post_types = taxonomy_object->object_type;
$post_type_object = get_post_type_object($related_post_types[0]);
$post_type_archive_title = $post_type_object->labels->name;
routes[window.location.pathname];
вернёт ошибку, поскольку ты будешь использовать тип string, которого в объекте нет (только заданные ключи), либо использовать тип { [key: string]: string }
. <form class="clear-cart" action="<?php echo esc_url( wc_get_cart_url() ); ?>" method="post"><button type="submit" onclick='javascript:if(!confirm("Удалить все товары из корзины?")) {return false;}' class="button" name="clear-cart">Очистить корзину</button></form>
add_action('init', 'woocommerce_clear_cart_url');
function woocommerce_clear_cart_url() {
global $woocommerce;
if( isset($_REQUEST['clear-cart']) ) {
$woocommerce->cart->empty_cart();
}
}