Hirdetés
- Fejhallgató erősítő és DAC topik
- Asztrofotózás
- VR topik
- 5.1, 7.1 és gamer fejhallgatók
- Milyen billentyűzetet vegyek?
- Soha nem szabta ilyen pénztárcabarátra új CPU-it az Intel
- Google Chromecast topic
- Nem akármilyen módon ugrik rá a memóriapánikra a Valve
- Vezeték nélküli fülhallgatók
- Teljesen az új Xboxhoz készül a neurális leképezés
-
PROHARDVER!
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
martonx
veterán
válasz
slice14
#5463
üzenetére
Azt kellene belátnod, hogy egy fórumból sosem fogsz megtanulni programozni. Egy-egy kérdésedre kapsz persze választ, és így tovább tudsz lendülni, az amúgy bagatell problémákon, és a végén el tudod mondani, hogy csináltál egy programot, de valóban érteni fogod, hogy miért is működik?
Segítség nélkül újra tudnád írni? Szóval a bagatell dolgok megkérdezése helyett, bizony elő kellene venned valami js-es online doksit, és legalább az alapokkal tisztába kerülnöd, ha már ez a választott nyelv, amin el akartál indulni.
-
Zedz
addikt
válasz
slice14
#5458
üzenetére
Az undefined azt jelenti, hogy az adott változónak nincs értéke. Itt szépen leírják, hogy mire is kell gondolni.
Ha egy kicsit lejjebb görgetsz, akkor látni fogod, hogy az if(x === undefined) az igazából ugyan az, mintha azt vizsgálnád, hogy if(!x).
Ha érdekel a JS akkor szerintem megéri rászánni egy kis időt, és elolvasni ezt a könyvet.
-
martonx
veterán
válasz
slice14
#5447
üzenetére
ajánlom figyelmedbe az undefined értéket. Javascript fura szerzet, mert ott a null azt jelenti, hogy van értéke valaminek, csak éppen az az érték null. Az undefined az ami azt jelenti, hogy az a valami nem is létezik.
typeOf(valami) === "undefined" mondjuk lehet a feltételed. -
slice14
veterán
válasz
slice14
#5423
üzenetére
Tudok a js-be a convert parancsnak változót adni, hogy a weather-t áztkonvertálja htmltoText-é? Több helyen kéne konvertálni és nem akarom átírni másik változóba a weather-t ha nem muszáj.
currentWeather = currentObservation.getWeather(),
Vagy nem kell változó, csak beírom a () közé a parancsot?
-
Jim-Y
veterán
válasz
slice14
#5419
üzenetére
Hat, hogy oszinte legyek sokkal jobb

Meg van 1-2 aprosag amit mashogy csinalnek. Peldaul arra nem lehet alapozni, hogy a hordozo kornyezet majd rendelkezik JSON parserrel ezert ha van lehetoseg jQuery-t hasznalni akkor javaslom.
Es akkor:
function getData(fileName) {
var rawData = readFile(),
parsedData;
try {
parsedData = $.parseJSON(rawData);
}
catch (ex) {
console.error(PARSE_DATA_ERR, ex);
}
return parsedData || {};
}Ha nincs lehetoseg jQuery-t hasznalni akkor pedig biztos ami tuti ellenorizzetek le, hogy van-e JSON object mint ahogy a jQ is csinalja:
// Attempt to parse using the native JSON parser first
if ( window.JSON && window.JSON.parse ) {
return window.JSON.parse( data );
} -
Jim-Y
veterán
válasz
slice14
#5326
üzenetére
Szerkesztettem az elozot

Majd ezt ugy lehetne felhasznalni, hogy
var file = readFile('/sdcard/Tasker/temp/weather.json'),
rawData = JSON.parse(file),
Weather = new Weather(rawData);
var sunPhase = Weather.getSunPhase(),
sunRise = sunPhase.getSunrise(),
sunriseHour = sunRise.getHour();
setGlobal('%Napfelkel1', sunriseHour);sot...
var settings = {
'%Napfelkel1': sunriseHour,
'masbizbasz': sunriseMinute,
'megintmasbizbasz': sunriseSecond
...
};
Object.keys(settings).forEach(function(key) {
setGlobal(key, settings[key]);
}); -
Jim-Y
veterán
válasz
slice14
#5324
üzenetére
Hat ez csak nevleg JS ugy megemlitem
. Ennyire csunya JS kodot en meg ritkan lattam (nem mondom, hogy nem, de majdnemNa jo nem leszek negativ
)
Amugy futtasd at a kodod ezen -> [link]
Amugy lehetne, egy csomo otletem van, hogy mivel lehetne szebbe tenni, de mindegyikbol az jonne ki, hogy tanulj egy kis JavaScriptet ^^ Peldaul, ha van idod es kedved, akkor csinalhatnak a Weather kore egy wrapper osztalyt.
pl:
/**
* @typedef {Object} Weather
* @property {CurrentObservation} current_observation
* ...etc
*/
/**
* @param {Weather} rawData
*/
function Weather(rawData) {
/** @type {Weather} */
this.baseData = rawData;
/** @type {CurrentObservation} */
this.currentObservation = rawData.current_observation;
}
/** @returns {CurrentObservation} */
Weather.prototype.getCurrentObservation = function() {
return this.currentObservation || {};
}
etc.. -
-
ltpalermo
csendes tag
válasz
slice14
#5317
üzenetére
köszi, de ezt már próbáltam, talán pont legelsőre és pont a ti projektetek alapján, de nem működik. gondolom a forecast-nál azért működik, mert ott van egy "period":1 stb, és ez alapján csinálja meg (ezt egyébként én is így csináltam meg). de az hourly_forecast-nál ilyen már nincs.
a tasker változóim már mind nagybetűsek egyébként, használok is párat másholja és #5313 Karma
köszi nagyon szépen működik a szélirányos dolog -
fordfairlane
veterán
válasz
slice14
#5300
üzenetére
A típuskonverzió == és != esetén elég furcsán lett implementálva a Javascriptben, ezért használata minden esetben kerülendő. A legtöbb programozó azért használja ezt az operátort, mert a többi C-forma nyelvekben nincs vele különösebb probléma, vagy nem ilyen mértékű. A Javascript specialitásai nem mindenki számára ismertek.
-
martonx
veterán
válasz
slice14
#5297
üzenetére
Azt jelenti, hogy típusosan is egyenlő. Mivel a js gyengén típusos nyelv, ezért az == becsapós lehet, illetve teljesítményben is rosszabb, mert "1" == 1 re is igazat ad, és ehhez a rendszer még cast-olja is az adatokat az ellenőrzéshez.
Ellenben az "1" === 1 nem lesz igaz, mert az egyik egy szöveg, a másik egy szám, és ez az összehasonlítás jóval gyorsabb tud lenni.
A == használata kerülendő, noha a fejlesztők többsége így használja, mert kényelmesebb (elfed hibákat, és mégis működik), illetve ennyivel is kevesebbet kell gépelni, de ez attól még nem lesz helyes, mert a többség így használja. -
Karma
félisten
válasz
slice14
#5293
üzenetére
Szerintem ez a félregexes megoldás nem annyira szerencsés. Mondjuk hogy helyes-e, azt ki tudod próbálni JSFiddle-ön vagy a Chrome konzoljában (F12) - első blikkre nekem nem tűnik annak, de ez nem jelent semmit

Így szerintem tisztább és olvashatóbb lenne:
if (Elorejelzes1td2.indexOf('legmagasabb') === -1) {
setGlobal('%Elorejelzes1td'," ");
}
else {
setGlobal('%Elorejelzes1td',Elorejelzes1td2);
}Vagy egy sorban:
setGlobal('%Elorejelzes1td', Elorejelzes1td2.indexOf('legmagasabb') === -1 ? " " : Elorejelzes1td2);
Új hozzászólás Aktív témák
- Einhell akkumulátoros fűnyíró eladó!
- Bomba ár! Panasonic CF-20-2 Tab+Laptop: i5-7G I 8GB I 256SSD I 10,1" WUXGA Touch I Cam I W11 I Gar
- Bomba ár! Lenovo ThinkPad L13 G2 - i5-11G I 16GB I 256SSD I 13,3" FHD I Cam I W11 I Garancia!
- Bomba ár! Lenovo ThinkPad E15 G2 - i7-11G I 8-16GB I 512SSD I 15,6" FHD I Cam I W11 I Garancia!
- Bomba ár! Lenovo ThinkBook 15 G2 - i5-11G I 16GB I 256SSD I 15,6" FHD I Cam I W11 I Garancia!
- Decathlonos 43-as boxcipő, alig használt, hibátlan állapotban
- BESZÁMÍTÁS! Intel Core i7 6700 4 mag 8 szál processzor garanciával hibátlan működéssel
- REFURBISHED és ÚJ - Lenovo ThinkPad 40AS USB-C Dock Gen2 (akár 3x4K felbontás)
- Dell XPS 13 9300 i7-1065G7 8GB 512GB FHD+ 500nit! 1 év garancia
- Powerbank Anker Prime, 20100mAh, 220W, QC + PD, Fekete A110BH11
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest



)


