Интересные факты о JS

программист JavaScript

оригинал:Dev.to/Sofa IK Junior…

Переводчик: Front-end Xiaozhi

Ставь лайк и смотри, поиск в WeChat【Переезд в мир】Обратите внимание на этого человека, который не имеет большого фабричного прошлого, но имеет восходящий и позитивный настрой. эта статьяGitHub GitHub.com/QQ449245884…Он был включен, статьи были классифицированы, и многие мои документы и учебные материалы были систематизированы.

Все говорили, что нет проекта для написания резюме, поэтому я помог вам найти проект, и это было с бонусом.【Учебник по строительству】.

В работе с JS есть много интересного. Несмотря на то, что инженеры имеют дело с этим каждый день, все еще есть некоторые языки, которые не были разработаны. В этой статье будут представлены некоторые функции JS, о которых вы, возможно, не думали.

NaN - это числовой тип

NaNЯвляетсяnumberтип. и,NaNне равно себе. ФактическиNaNне равно ничему, проверяя, что переменнаяNaNможно использоватьisNaN()метод судить.

> typeof(NaN)
"number"

> NaN === NaN
false

ноль это объект

nullявляется объектом. Звучит странно! правильно? Но это правда.

> typeof(null)
"object"

при этих обстоятельствах,nullУказывает на отсутствие значения. следовательно,nullне должно бытьObjectпример.

> null instanceof Object
false    
    

неопределенный может быть определен

undefinedЭто не зарезервированное ключевое слово в JS, вы можете указать для него значение, не сообщая об ошибке, если вы объявляете переменную без значения, по умолчаниюundefined

> var some_var;
undefined
> some_var == undefined
true
> undefined = 'i am undefined'   

0,1 + 0,2 не равно 0,3

В JavaScript,0.1 +0.2 == 0.3возвращениеfalse. Дело в том, что javascript хранит числа с плавающей запятой как двоичные файлы.

> 0.1 + 0.2
0.30000000000000004
> 0.1 + 0.2 == 0.3
false    

Math.max() меньше, чем Math.min()

Math.max() > Math.min()возвращениеfalseФакт выглядит неправильным, но на самом деле он правильный.

Если параметры не переданыmin()илиmax(), то он возвращает следующие значения.

> Math.max()
-Infinity
> Math.min()
Infinity    

018 - 045 = -19

В JavaScript префикс0преобразует любое число в восьмеричное. Однако восьмеричное число не используется.8, любой содержащий8Числа автоматически преобразуются в обычные десятичные числа.

> 018 - 045
-19    

следовательно,018-019на самом деле равно десятичному выражению18-37,так как045восьмерично, но018является десятичным.

Функция может выполнить сама себя

Просто создайте функцию и вызывайте ее, как только вы вызываете другие функции, и используйте()грамматика

> (function()  { console.log('I am self executing');  })();
I am self executing    

положение скобок

`return` 语句后面没有东西的时候它什么都不返回。 实际上,JS 后面 `return` 添加一个 `;`。

> function foo() {
   return
   {
      foo: 'bar'
   }
}
> foo(); 
undefined

> function foo() {
   return {
      foo: 'bar'
   }
}
> foo(); 
{foo: "bar"}

нет целочисленного типа данных

В JS нетint(целочисленный) тип данных. Все номераNumberтип. На самом деле это будетintЗначение числа с плавающей запятой хранится в памяти.

функция sort() автоматическое преобразование типа

sort()Функция автоматически преобразует значение в строку, из-за чего происходят странные вещи.

> [1,5,20,10].sort()
(4) [1, 10, 20, 5]

Однако ее можно решить, сравнив:

> [1,5,20,10].sort(function(a, b){return a - b});
(4) [1, 5, 10, 20]

сумма массивов и объектов

> !+[]+!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]
9
> {} + []
0
> [] + {}
"[object Object]"
> [] + []
""
> {} + {}
"[object Object][object Object]"
> {} + [] == [] + {}
true

общаться

Статья постоянно обновляется каждую неделю. Вы можете выполнить поиск «Big Move to the World» в WeChat, чтобы прочитать и обновить ее как можно скорее (на одну или две статьи раньше, чем в блоге). Эта статья находится на GitHub.GitHub.com/QQ449245884…Он был включен, и многие мои документы были разобраны. Добро пожаловать в Звезду и совершенство. Вы можете обратиться в тестовый центр для ознакомления во время собеседования. Кроме того, обратите внимание на паблик-аккаунт и ответьте в фоновом режиме.Благосостояние, вы можете увидеть преимущества, вы знаете.