JavaScript学习笔记:对象属性的枚举
JavaScript中对象的属性分为两种:数据属性和访问器属性。然后根据具体的上下文环境的不同,又可以将属性分为:原型属性和实例属性。原型属性是定义在对象的原型(prototype
)中的属性,而实例属性一方面来自构造的函数中,然后就是构造函数实例化后添加的新属性。
JavaScript中对象的属性分为两种:数据属性和访问器属性。然后根据具体的上下文环境的不同,又可以将属性分为:原型属性和实例属性。原型属性是定义在对象的原型(prototype
)中的属性,而实例属性一方面来自构造的函数中,然后就是构造函数实例化后添加的新属性。
在很多语言当中都有变量,而这也是基础知识。在JavaScript中也有变量,而最近也在学习有关于这方面的知识。今天就来总结一下JavaScript中有关于变量的一些基础知识。
JavaScript有两种变量:局部变量和全局变量。而这两个对于初学JavaScript的同学来说是一个较为麻烦的。非常容易搞错。我也看了好几天有关于这方面的教程,也还没完全整明白。今天把自己理解的记录下来,有不对之处,还请高手斧正。
今天在freeCodeCamp上面刷题,碰到一题是有关于字符串反转。反转一个字符串是JavaScript中常见的面试题之一。可能面试官会给你一个字符串“Hello Word!”,让你通过JavaScript的方法,将其变成"!droW olleH"。我也是初学者,利用前面所学数组相关的知识以及题目的提示,我算是过关了,后来想,是不是还有其他的方法能破此题呢?搜索了一下,还是有不少的方法,这里把这些方法罗列一下,以备后面可以使用。
在Web中截断字符串的场景随处可见,CSS3未出现之前,截断字符串都是通过后端程序或者说JavaScript来处理。就现在的技术而言,使用CSS3的相关技术就可以实现截断字符串的效果。
Palindromes称之为回文。在中文文当中是指倒着念和顺着念都是相同的,前后对称,例如“上海自来水来自海上”。在英文文当中是指正着看和反着看都相同的单词,例如“madam”。而对于数字,又称之为回文数,是指一个像“16461”这样的对称的数,即这个数的数字按相反的顺序重新排列后得到的数和原来的数一样。在JavaScript中Palindromes也常出现在一些算法题中,这篇文章主要介绍如何使用JavaScript判断一个字符是不是Palindromes。
Chunky Monkey指的就是把一个数组arr
按指定的长度size
分割,并且将分割的数组push
到一个新数组newArr
中,组成一个多维二组。今天这篇文章整理了有关于实现这种效果的方法。创建一个chunk()
函数,函数中传入两个参数arr
和size
,其中arr
是要被分割的函数,而size
是指分割的长度。然后将分割出来的数组tempArr
推入到一个新的数组中newArr
。
Factorial称之为阶乘,维基百科是这样描述的“一个正整数的阶乘是所有小于及等于该数的正整数的积,并且有0
的阶乘为1
。自然数n
的阶乘写作n!
。”而阶乘函数是递归(Haskell)函数典型示例。在JavaScript中可能运用到递归函数。但在实际使用中,你可能没有考虑何时何地递归是有用的,或者使用不好会带来很多问题。在这篇文章中我们来看看JavaScript如何实现阶乘的功能。
简单点说就是对所给的数组做截取操作。看上去就是对数组做数组元素的删除,可能你会想到数组中的shift()
方法,可是这个方法只能删除数组的第一个元素。而我们要实现的功能是:对所给数组,根据第二个参数进行截取操作,如果第二个参数大于数组的长度,则返回一个空数组,否则将返回第二个参数作为索引值之后的所有元素组成的数组。
Mutations 对一个包含两个元素的数组,检测数组中的第二个元素的所有字母是否都在第一个元素中出现过,如果出现过,返回的是true
,否则返回的是false
。(其中忽略大小写)