На данный вопрос уже ответили:
Объясните пожалуйста приведение типов к number, string в js на основе нижеприведенного примера или где об этом можно подробно почитать на русском.
var a = {a:0,b:'',c:null,d:undefined,e:NaN,f:false,g:[],h:{}}
var b = ['a','b','c','d','e','f','g','h'];
function f(call){
for(var i = 0; i< b.length; i++){
if(call(b[i]) ){
console.log(b[i]);
}
}
}
f((key)=>a[key]);//gh
f((key)=>a[key]!=null);//все кроме cd
f((key)=>(++a[key]));//abcfg
после этого добавил больше значений
var a = {a:0,b:'',c:null,d:undefined,e:NaN,f:false,g:[],h:{},i:1,j:'one',k:[1],l:{a:true},m:[1,2],n:1e-6,o:0.9}
var b = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o'];
function f(call){
for(var i = 0; i< b.length; i++){
if(call(b[i]) ){
console.log(b[i]);
}
}
}
f((key)=>++a[key]);//все кроме dehjlm
f((key)=>a[key]+'');//все кроме bg
f((key)=>a[key]);//все кроме abcdef
f((key)=>a[key]!=null);//все кроме cd
Проверил это следующим выводом
f((key)=>{
console.log(`a[${key}]`+' => '+typeof(a[key])+`; ++a[${key}]`+' => '+(++a[key]));
return false;
});
f((key)=>{
console.log(`a[${key}]+''`+' => '+a[key]);
return false;
});
Из этого понял что:
bool
это
всегда true
;хотелось бы почитать объяснение такого поведения интерпретатора на русском
если null==undefined, то почему null можно привести к числу, а undefined нет??
Вот, что происходило во время выполнения. почему именно такие результаты
- потому что при приведении результатов к Boolean
возвращается true
. Так работает js (в других языках может быть иначе).
//#1
console.log( Boolean( [] ) );
console.log( Boolean( {} ) );
//#2
console.log( null == null );
console.log( null == undefined );
//#3
var foo = 0;
console.log( Boolean( ++foo ) );
var foo = "";
console.log( Boolean( ++foo ) );
var foo = null;
console.log( Boolean( ++foo ) );
var foo = false;
console.log( Boolean( ++foo ) );
var foo = [];
console.log( Boolean( ++foo ) );
Виртуальный выделенный сервер (VDS) становится отличным выбором
Есть React и Redux, храним данные в стореСейчас переходим на получение данных через graphQL, будем использовать Apollo
Использую стандартный пакет vue с webpack из коробки, но не могу обработать определённые api путиНужно, что б по этим путям запускался код node
Есть небольшая форма со скриптом, через которую осуществляется загрузка файлов на google диск сторонними пользователямиПользователь вводит...