Можно создать дубликат:
Question on this JavaScript Syntax (“What Does This Do?”)Javascript функция тестирования
в this статье я нашел это:
/xyz/.test(function(){xyz;})
я смотрел на это, и я coudn't выяснить, как xyz передается вызывающему. поэтому я сделал некоторые подобный тест в консоли:
/xyz/.test(function(){xya;}) > false
/xyz/.test(function(){xyz;}) > true
/xyz/.test(function(){'xya';}) > false
/xyz/.test(function(){'xyz';}) > true
/xyz/.test(function(){console.log('xya');}) > false
/xyz/.test(function(){console.log('xyz');}) > true
/xyz/.test(function(xya){}) > false
/xyz/.test(function(xyz){}) > true
/fuc/.test(function(){}) > false
/func/.test(function(){}) > true
, кажется, что функция .test()
преобразует аргумент в строку, а затем делает тест. так зачем использовать /xyz/.test(function(){xyz;})
, а не /xyz/.test('xyz')
?
Это довольно загадочным, но это было предложено (и отчасти объяснено) одним из первых комментариев в нижней части этой статьи. – nnnnnn