关于八皇后问题的 JavaScript 解法,总觉得是需要学习一下算法的,哪天要用到的时候发现真不会就尴尬了 背景 八皇后问题是一个以国际象棋为背景的问题:如何能够在 88 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后?为了达到此目的,任两个皇后都不能处于同一条横行、纵行或斜线上 八皇后问题可以推广为更一般的n皇后摆放问题:这时棋盘的大小变为 nn ,而皇后个数也变成n 。当且仅当n = 1或n ≥ 4时问...
一、JS的三种最常见的对话框 //====================== JS最常用三种弹出对话框 ======================== //弹出对话框并输出一段提示信息 function ale() { //弹出一个对话框 alert("提示信息!"); } //弹出一个询问框,有确定和取消按钮 function firm() { //利用对话框返回的值 (true 或者 false) if (confirm("你确定提交吗?")) { alert("点击了确定"); } else { alert("点击了取消"); } } //弹出一个输入框,输入一段文字...
对于js来说,我想每一个刚接触它的人都应该会抱怨:为什么没有一个通过class来获取元素的方法。尽管现在高版本的浏览器已经支持getElementsByClassName()函数,但是对于低版本浏览器来说,还是无法兼容,在脱离其他库的时候,还是得自己封装一个方法。 方法一 function getByClass1(parent, cls){var res = []; //存放匹配结果的数组var ele = parent.getElementsByTagName(*);for(var i = 0; i < ele.length; i++){if(ele[i].cla...
下面都是我学习W3C School教程中有关JavaScript写的学习笔记,每个方法我都亲身测试过,每个方法的用途和参数列表,我都是在经过我亲身实践后加上了我自己的一点理解,解释的还算比较详细。现记录下来,以便查阅: javascript之Array类: 创建js数组两种方式: var arr = []; 或 var arr = new Array(); ()里可以指定长度,也可以不指定,指不指定都无所谓, 因为js里的数组长度是可变的concat(arr1,arr2,arr3......arrx):js数组合...
由于最近都在freecodecamp上刷代码,运用了很多JavaScript数组的方法,因此做了一份关于JavaScript教程的整理,具体内容如下: 一、普通方法 1、join() 将数组元素连接在一起,并以字符串形式返回 参数:可选,指定元素之间的分隔符,没有参数则默认为逗号 返回值:字符串 对原数组的影响:无 2、reverse()将数组的元素顺序变成倒序返回 参数:无 返回值:数组 对原数组的影响:原数组被修改为倒序排列之后的数组 3、sort()对数组元...
Math.abs(x):可返回数的绝对值Math.ceil(x):向上取整Math.floor(x):向下取整Math.max(x,y):最大值Math.min(x,y):最小值Math.random(x):随机数Math.round(x):四舍五入 获取指定范围内的随机数 var x=Math.floor(Math.random()*(max-min+1))+min; 以上这篇JavaScript Math 对象常用方法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
字符串是不可变的。字符串方法,不会改变原有字符串的内容,而是返回一个新字符串。 charAt():返回在指定位置的字符。 concat():连接两个字符串文本,并返回一个新的字符串。 indexOf():indexOf() 方法返回指定值在字符串对象中首次出现的位置。 match():使用正则表达式与字符串相比较。 replace():被用来在正则表达式和字符串直接比较,然后用新的子串来替换被匹配的子串。 slice():摘取一个字符串区域,返回一个新的字符串。 s...
JAVASCRIPT是AJAX技术中不可或缺的一部分,所以想学好AJAX以及现在流行的AJAX框架,学好JAVASCRIPT是最重要的。 一、基础知识: 1.document.write(""); 输出语句 2.JS中的注释为// 3.传统的HTML文档顺序是:document->html->(head,body) 4.一个浏览器窗口中的DOM顺序是:window->(navigator,screen,history,location,document) 5.得到表单中元素的名称和值:document.getElementById("表单中元素的ID号").name(或value) 6.一个小写转大...
创建日期 Date 对象用于处理日期和时间。 可以通过 new 关键词来定义 Date 对象。以下代码定义了名为 myDate 的 Date 对象: 有四种方式初始化日期:new Date() // 当前日期和时间 new Date(milliseconds) //返回从 1970 年 1 月 1 日至今的毫秒数 new Date(dateString) new Date(year, month, day, hours, minutes, seconds, milliseconds) 上面的参数大多数都是可选的,在不指定的情况下,默认参数是0。 实例化一个日期的一些例子...
什么是javascript? (1) JavaScript是一种基于对象(Object)和事件驱动(Event Driven)并具有安全性能的 脚本语言。 (2) JavaScript是由Netscape公司开发的一种脚本语言,其编写的程序可以嵌入到 HTML页面中,并直接在浏览器中解释执行。 (3) JavaScript可以被浏览器直接解释执行,它可以更好得减小服务器压力,提高程 序运行效率。 //事件(事件监听) : //标签对象.事件监听.function(){执行的代码,找对象,找属性,改属性}; ...
简单地说, JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串(伪对象) ,然后就可以在函数之间轻松地传递这个字符串,或者 在异步应用程序中将字符串从 Web 客户端传递给服务器端程序 。这个字符串看起来有点儿古怪(稍后会看到几个示例),但是 JavaScript 很容易解释它,而且 JSON 可以表示比名称/ 值对更复杂的结构。例如,可以表示数组和复杂的对象,而不仅仅是键和值的简单列表。 判断json是否为空代码如下: var j...
平时我们做导航滚动到内容都是通过锚点来做,刷的一下就直接跳到内容了,没有一丝的滚动效果,而且 url 链接最后会有“小尾巴”,就像#keleyi,今天我就介绍一款 jquery 做的滚动的特效,既可以设置滚动速度,又可以在 url 链接上没有“小尾巴”。 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>jQuery实现页面内锚点平滑跳转</title><base target="_blank" /> <style type="text/css"> #hovertree { heigh...
在Web应用程序特别是Web2.0程序开发中,经常要获取页面中某个元素,然后更新该元素的样式、内容等。如何获取要更新的元素,是首先要解决的问题。令人欣慰的是,使用JavaScript获取节点的方法有很多种,这里简单做一下总结(以下方法在IE7和Firefox2.0.0.11测试通过): 1. 通过顶层document节点获取: (1) document.getElementById(elementId):该方法通过节点的ID,可以准确获得需要的元素,是比较简单快捷的方法。如果页面上含...
在jquery中显示隐藏div方法方法有很多种,如比较简单的函数show(),hide(),toggle(),slideDown()然后还有css设置div的style属性都可操作,下面我来介绍。 show()方法 显示出隐藏的 <p> 元素。代码如下: $(".btn2").click(function(){ $("p").show(); });toggle()方法 toggle() 方法切换元素的可见状态。 如果被选元素可见,则隐藏这些元素,如果被选元素隐藏,则显示这些元素。代码如下: <html> <head> <script type="text/javasc...
jQuery 隐藏和显示 通过 hide() 和 show() 两个函数,jQuery 支持对 HTML 元素的隐藏和显示: 实例代码如下: $("#hide").click(function(){ $("p").hide(); }); $("#show").click(function(){ $("p").show(); });hide() 和 show() 都可以设置两个可选参数:speed 和 callback。 语法:代码如下: $(selector).hide(speed,callback) $(selector).show(speed,callback)speed 参数规定显示或隐藏的速度。可以设置这些值:"slow", "fast...