Загрузка...

Каким образом js возводит строку в квадрат?

Тема в разделе Frontend создана пользователем Нэнси 24 июн 2024. 426 просмотров

Загрузка...
  1. Нэнси
    Нэнси Автор темы 24 июн 2024 ДИЗАЙНЕР: АВАТАРКИ | БАННЕРЫ | WEB | GIF 60 25 апр 2022
    Каким образом js возводит строку в квадрат? Раньше я прогал на питоне, поэтому непривычно видеть такое :thinking:
    JS
    let b = '2';
    console.log(b**2);
    // Вывод: 4
    Я знаю, что ** возведение в степень. Я говорю о том, что в питоне чтобы возвести число в квадрат тебе нужно intовое число, а в js я возвожу строку
     
    24 июн 2024 Изменено
  2. Hollywood
    Hollywood 24 июн 2024 t.me/likeabuy_bot – Автоматическая покупка тг подарков 19 058 28 окт 2020
    1. Посмотреть предыдущие комментарии (2)
    2. Hollywood
      Нэнси, а, ну ему все равно видимо
    3. Hollywood
      Нэнси, спасибо кстати, что напомнил о том, что я хотел жс начать учить
  3. жди
    жди 24 июн 2024 10 185 27 авг 2023
    Math.pow(b, 2)
     
    1. жди
      конечно, за 10 лет все поменялось, но в 2014 году было так:
      [IMG]
  4. морфий
    так тут блять также как и в питоне оператор **
     
    1. Нэнси Автор темы
      морфий, Я знаю, что ** возведение в степень. Я говорю о том, что в питоне чтобы возвести число в квадрат тебе нужно intовое число, а в js я возвожу строку
    2. Hollywood
      Нэнси, ну не возводи строку, если тебя это так напрягает
  5. mdn
    mdn 24 июн 2024 1 23 июн 2024
    js как и pyhton является языком с динамической типизацией. Ты производишь математическую операцию со строкой, затем js пытается изменить тип переменной на number и делает операцию

    https://learn.javascript.ru/type-conversions
     
    24 июн 2024 Изменено
    1. Нэнси Автор темы
      mdn, Ну вообще, допустим если ввести этот же код в питоне, то он выдаст ошибку . Я так понимаю это просто особенность js, что он может строку преобразовать в число, если производишь какую-то математическую операцию[IMG]
    2. mdn
      Нэнси, все верно, это особенность js. Если тебе такое не нравится, то советую глянуть в сторону typescript, тоже самое, но со строгой типизацией
    3. Нэнси Автор темы
      mdn, Понял, интересно очень, а то впервые с таким столкнулся и в голове не укладывается
  6. AIexa
    AIexa 24 июн 2024 Лучший софт - lolz.live/threads/1634798/ :+rep: 11 520 24 мар 2020
    ну в жсе это норма, как посчитает нужным так и делает, для мат операций если строка число, то походу решает делать умножение. А может это только для возведения в степень. Все сделано для уникумов, чтоб работало при любой хуйне
     
    1. жди
      вывод: использовать typescript :duck_classic:
      24 июн 2024 Изменено
  7. Daemon
    Daemon 24 июн 2024 1691 8 янв 2021
    у js -слабая типизация, т.е. допустимы неявные преобразования, у python - сильная
    https://habr.com/ru/articles/161205/
     
    24 июн 2024 Изменено
    1. Посмотреть предыдущие комментарии (1)
    2. Daemon
      Jonhui, я понял, к чему это ты сказал, человек не был знаком с неявными преобразованиями, т.к. работал только с сильной типизацией
  8. билборды
    Потому в js "2" + 2 = 4
     
  9. mazfuck0ff
    mazfuck0ff 16 июл 2024 Пропагандирую вежливость и вам того советую 276 23 мар 2017
    Работает преобразование типов. Ты же пытаешься возвести строку в степень. Это математическая операция. Если это математическая операция он попытается преобразовать строку в число, и после возвести в степень.
     
Top