- További kavarás a Pixel 10-ek körül
- Xiaomi 13T és 13T Pro - nincs tétlenkedés
- Okosóra és okoskiegészítő topik
- Apple iPhone 16 Pro - rutinvizsga
- Milyen okostelefont vegyek?
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Egyszerre legnagyobb és legkisebb is a Garmin Venu X1
- Magyarországon is kapható a Moto G85 5G
- Samsung Galaxy A56 - megbízható középszerűség
- Hat év támogatást csomagolt fém házba a OnePlus Nord 4
-
Mobilarena
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
Hirdetés
- További kavarás a Pixel 10-ek körül
- Kerékpárosok, bringások ide!
- Elektromos rásegítésű kerékpárok
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Kazy Computers - Fehérvár - Megbízható?
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Projektor topic
- Subaru topik
- Xbox Series X|S
- Xiaomi 13T és 13T Pro - nincs tétlenkedés
- További aktív témák...
- MSI Sword 15 A12VF 15.6" FHD IPS i7-12650H RTX 4060 16GB 512GB NVMe gar
- GAMER PC : RYZEN 7 7800X3D /// 32 GB DDR5/// RX 9070 XT 16GB /// 1TB NVME
- Eladó garanciális Hohem iSteady V2S gimbal
- Creative 3D Blaster 3Dfx Voodoo Banshee PCI (CT6760)
- Samsung Galaxy S22 Ultra 12/256GB Megkímélt,Kétkártyás,Tartozékaival. 1 év Garanciával!
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest