I am looking for GUI/Windows based tool to test my javascript code there instead of using firebug or other in-browser tool.
I want to play around with javascript language outside of the browser to learn more about it.
Has anyone come across such tool? I could not find one :(
Edit: I am looking for GUI/Windows based on which can be used even if I am not connected to internet and still play around with javascript.
I'm a big fan of jsFiddle.
jsBin is another option.
Microsoft Web Developer Express is free and has a great JavaScript editor and debugger.
If you're looking for something that you don't need to be connected to the internet for, why can't you just use your browser? I assume you've already got some kind of development platform now. Save to a local HTML file and view it on your local browser.
Do you not have some kind of a GUI development program like DreamWeaver or CODA or something like that? (I'm on a mac, so I'm not familiar with a lot of windows based programs).
Related
We have a huge client-side application that doesn't work at all on an iPad and we have no idea why.
Unfortunately I don't have a book way of showing or explaining a particular piece of Javascript that doesn't work because from what we call tell, there are none.
Can any heavy Javascript users give me some clues how we can troubleshoot this?
PS - We are a Windows shop, but I would be willing to go buy a MacBook Pro to troubleshoot if need be, but I'd obviously prefer to save the 2 grand if I can.
I don't use Windows, but I assume you could use virtualization software to run OSX on a PC and then use the Safari remote web inspector:
https://developer.apple.com/safari/tools/
It looks like there are also two tools available if that doesn't work:
https://people.apache.org/~pmuellr/weinre/docs/latest/Home.html
http://www.telerik.com/platform#test
I've recently fell in love with Nitro (http://nitrotasks.com), but what got me very curious was that it was written in HTML, CSS and Javascript, yet, it is packaged as a multi-platform binary! How is this possible? Which toolkit are they using?
Based on their Launchpad repository for Ubuntu, they are using Quickly.
For Chrome and Firefox, based on the Nitro GitHub page, it seems that they are just deploying it as a browser plug-in.
I just checked the Nitro website, and it doesn't look like it is a multi-platform binary, after all. It looks like they have a version for Linux/Ubuntu, and also an extension (plugin) for Chrome. They also have a web version and a Firefox plugin, which isn't available yet.
Ok, this isn't exactly an answer to your question, but I am assuming you're asking because you consider doing a similar thing yourself in which case it might be worthwhile to check out http://appjs.org/ which makes exactly this possible. Please do realize a lot might change and you should only use that if and only if you're willing to adapt to those change in the future.
I am looking for a way to find the os version and model version of the computer my site is being viewed on.
jQuery, javascript, html, php, asp...
Any language browsers generally support will do.
I know it's possible, comex did it for iOS.
I think he did:
firmware.indexof("4.0");
But I need the model too, as I said before. That is a veeeeeerrrrrryyyyyy long script that won't work for me anyway.
I googled
it, but no luck.
Thanks in advance!
If you expect that your clients will have Flash installed (95%+ of the world does), you can use a Flash movie to check the flash.system.Capabilities object. It has lots of information you might be interested in. If you're trying to find it on an iOS machine, then obviously this won't work since it's not going to have Flash on it.
I'm pretty new to workign with Javascript.
In most languages you can run the code quickly locally on your machine. From what I've seen, in JS you generally only use it via the browser, and so I've been uploading my code an viewing its effects in the browser. This has proven very tiresome. Also, if I mak one error, it seems like my JS/JQuery will just do NOTHING, instead of giving me a useful error, message, which is making it painfully slow to code in.
IS there some way to run JS locally to see that it is working as I go? And then only upload it to the web when I'm mostly done? What ways are there for me to do this? What ways aer there for me to unit test the Javascript locally? Say I have some JAML that should render as <p>HI</p>, how do I run this locally in a unit test?
Thanks for the help,
Alex
EDIT:
Thanks for all the great suggestions. I'll have to take a bit of time and go through them to see which ones best help me in my situation.
Since you're using jQuery, I assume that you actually want to manipulate the various elements on your page. So depending on your specific development enviroment, uploading it each time is probably the way to go anyway. If you can set up a dev enviroment on your local machine (not always possible) then go with that.
As an actual answer to your question, I suggest using Chrome's developer tools, it doesn't just have the console, but an element inspector, and a resource tracker (resource tracker is invaluable when working with JSON and AJAX, since invalid json will fail silently)
As far as I know, the firebug plugin for firefox (dont use it myself) has a similar feature set, so if you're more comfortable with that go with it.
Just remember, as a developer, your development (and debuggin) enviroment is just as important as the code that you are writing.
EDIT: Noticed that you mentioned unit testing. There are several unit testing frameworks out there for JS including one that integrates with firebug called FireUnit. Do a quick google search to find more if you want.
You don't need to upload the JS file to a server to test it. Just write an html and declare the js binding
<script
src="js/yourJSFile.js"
type="text/javascript"></script>
Edit the JS file in your favorite editor and then refresh the page to test it.
For unit testing the best option is Selenium. It allows you to record an interaction with the browser and then play it back.
You can use Firebug with Firefox to debug JS, and Google Chrome has a debugger built-in (use the Tools -> Developer Tools menu).
You can run Javascript from the local file on your machine in your browser, so you can skip the uploading step.
Also, I'd recommend using Firefox/Firebug combo for developing Javascript as it will be very handy, especially for the part you mentioned about not seeing what's going wrong with your code.
Even if you upload your javascript it gets downloaded back to you as soon as you visit the webpage that invoques it. Its run client side always. So stick to local and use firebug as the others have said. Google`s developer tool is quite nice too.
In the browser if you open the developer tools, follow the following steps:
1) Navigate to sources
2) Under sources, click snippet and open run.js
3) You can use run.js to write as much code as you want and run it locally only to see if your code is working or not (it will give you output on the console)
4) Also you can get used to some keyboard shortcuts to make it faster for you.
5) For small javascript codes, you can navigate to console and run your code there
If you want to do unit testing with Javascript there are extension of Firebug that can help you with that. I haven't try any of them, so I can't really tell you which one are worth considering, but you can easily find them if you search for the keyword "Firebug unit testing" on Google.
What seems to be comming on top is FireUnit. You can find some information about how it works here.
Consider Spider Monkey, which is a javascript engine separate from a browser. If what you are developing does not involve rendering to a webpage or can be separated from the rendering code (good practice!), then this could be useful.
I prefer Chrome to Firefox and I just found Web Server for Chrome.
It's just a Google App that quickly sets up a web server for you and will be set up anywhere you are logged into Chrome. It only allows file access to your current devices, or if you specify, other devices only on the current LAN.
You just point it to the directory with your index.html file and type http://127.0.0.1:8887 in your browser.
Additionally to the answers given you can use Jasmine for automated testing.
A tutorial that seems to help get started with automated testing on Jasmine is provided by Evan Hahn.
I used it and for me it works like a charm. Especially if test driven development is what you are going for!
The development experience for the Palm Pre sucks, to say the least. At best you are working on JavaScript in Eclipse with the Aptana plugin. The intellisense you get is really, really dismal. You have to be looking at the documentation every 5 seconds.
I was thinking, Visual Studio really excels at JavaScript and intellisense. Has anyone succeeded at writing Palm Pre code in VS2008 with intellisense, which would require hooking in Palm's Mojo Library?
Is there a known way to hook in 3rd party non-source libraries to JavaScript in Vs2008?
I've been looking for alternatives to Eclipse, too, but so far it does not appear that anyone has done it. For myself it felt like too much work, so I just switched to working with several terminal windows open and a browser window to the documentation.
I'm a long time eclipse user but was disappointed in the eclipse environment for Pre - especially after using the Android SDK which hooks nicely into eclipse (then again the dev environment is Java there).
Have you tried Komodo? I switched over to it and the autocompletion is nice and the webos addon does a decent job. I don't have the professional version so I can't comment on the debugging capability which I'd love to have.
If you can tell VS08 you want to load the Mojo.js stuff, then it should work. I think you should be able to configure any custom tools you need for building etc. as well.
Personally I'd recommend you check out JetBrains' IntelliJ IDEA. They have really good JavaScript support and I've used it with some Pre-stuff as well.