проверка типов
Чет я тут подумал, проверку типов в js можно делать гораздо проще, чем это обычно делается, например, через тайпов и пр. Можно делать вот так например:
String.prototype.str=true
types={
str: "foo",
arr: [],
ob: {},
fu: function(){},
__proto__: null
}
for(i in types){
console.log(i+": "+types[i].str)
}
tst=function(arg){
if(arg.str) return eval(arg); return arg()
}
tst("console.log('foo')")
tst(function(){console.log("bar")})
//str: true
//arr: undefined
//ob: undefined
//fu: undefined
//foo
//bar
|
я вот сижу пытаюсь вникнуть, что этот код делает, не получается))
|
Цитата:
|
для того чтобы узнать тип переменной, то достаточно написать:
console.log(typeof "my string"); я вашу логику не пойму. где это пригодится |
ну, к примеру для массивов, также свои типы можно определять, да и вообще, так изящней, и соответствует духу js:)
|
я твое изящество никак не могу вкусить :(
может более подробнее развернешь?? так сказать по больше примеров? |
skrudjmakdak,
Или можно смешанные типы, например, вместо function(arg){if(typeof arg==="foo"||typeof arg==="bar"){dostuff}}, function(arg){if(arg.foo) dostuff} |
newobject, ты случайно не троль? а? земля должна стать квадратной чтобы это typeof arg==="foo" выполнилось
|
skrudjmakdak,
ес-нно там напр "string". Ты на мелочи отвлекаешься, масштабней надо смотреть:) |
Цитата:
|
| Часовой пояс GMT +3, время: 19:13. |