当我找到Array.of时,我正在做一些阅读.
根据MDN,
无论参数的数量或类型如何,Array.of()方法都会创建一个具有可变数量参数的新Array实例.
var a = Array.of(1,2,3,4,5);
console.log(a)
Run Code Online (Sandbox Code Playgroud)
但是如果我已经知道了这些值,我也可以将它们包装起来[]
以获得相同的输出.那么我们可以/应该使用的具体情况是Array.of
什么?使用它还有什么好处[]
吗?
这个问题的目的是Array.of
vs []
与new Array
vs 之间的区别Array.of
我正在尝试编写一些代码来验证表单数据.我有一个日期字段,应该有一个mm/dd/yyyy
格式.我需要捕获例如2月31日的异常,所以我添加了这段代码:
var d = new Date(dob);
if (isNaN(d.getTime())) { //this if is to take care of February 31, BUT IT DOESN'T!
error = 1;
message += "<li>Invalid Date</li>";
} else {
var date_regex = /^(0[1-9]|1[0-2])\/(0[1-9]|1\d|2\d|3[01])\/(19|20)\d{2}$/;
var validFormat = date_regex.test(dob);
if (!(validFormat)) {
error = 1;
message += "<li>Invalid date format - date must have format mm/dd/yyyy</li>";
}
}
Run Code Online (Sandbox Code Playgroud)
但是我发现了一些非常奇怪的东西:虽然日期02/32/2000错误作为无效日期,02/31/2000却没有!
我正在尝试创建一个只接受数字的数字输入框.
我的初始价值方法是替换价值并将其重新设定为自身.
function vm(){
var self = this;
self.num = ko.observable();
self.num.subscribe(function(newValue){
var numReg = /^[0-9]$/;
var nonNumChar = /[^0-9]/g;
if(!numReg.test(newValue)){
self.num(newValue.toString().replace(nonNumChar, ''));
}
})
}
ko.applyBindings(new vm())
Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.2.0/knockout-min.js"></script>
<input type="text" data-bind="textInput: num" />
Run Code Online (Sandbox Code Playgroud)
现在这种方法有效,但会添加另一个订阅事件循环,所以我尝试使用自定义绑定,以便我只能返回更新的值.新的,我尝试了一些但不知道该怎么做.以下是我的尝试,但它不起作用.它甚至没有更新observable.
ko.bindingHandlers.numeric_value = {
update: function(element, valueAccessor, allBindingsAccessor) {
console.log(element, valueAccessor, allBindingsAccessor())
ko.bindingHandlers.value.update(element, function() {
var value = ko.utils.unwrapObservable(valueAccessor());
return value.replace(/[^0-9]/g, '')
});
},
};
function vm() {
this.num = ko.observable(0);
this.num.subscribe(function(n) {
console.log(n);
})
}
ko.applyBindings(new vm())
Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.2.0/knockout-min.js"></script>
<div>
<input type="text" …
Run Code Online (Sandbox Code Playgroud)说我有 var input = {'name':'john'}
我愿意
input['name'] = 'James'
它变成了var input = {'name':'john'}
但我可以用点传递值来访问嵌套属性吗?
喜欢
var input = {"name":"john","grades":"{english:"A","math":"C"}"}
我无法通过执行input["grades.math"]
.
给定以下数组:
const x = [2, 14, 54, 109, 129, 136, 165, 312, 320, 330, 335, 348, 399, 440, 450, 461, 482, 501, 546, 547, 549, 559, 582, 584, 615, 620, 647, 682];
const y = [539, 681, 682, 683];
Run Code Online (Sandbox Code Playgroud)
使用节点v 7.3.0我观察到以下意外行为:
[> x.find(y.includes, y);
undefined
[> y.find(x.includes, x);
682
Run Code Online (Sandbox Code Playgroud)
示例代码段:
const x = [2, 14, 54, 109, 129, 136, 165, 312, 320, 330, 335, 348, 399, 440, 450, 461, 482, 501, 546, 547, 549, 559, 582, 584, 615, 620, 647, …
Run Code Online (Sandbox Code Playgroud)如何垂直汇总数组数组中的所有数据?
arrayOfArrays = [{
label: 'First Value',
data: [1, 2, 3, 4, 5, 6, 7, 8]
},
{
label: 'Second Value',
data: [1, 2, 3, 4, 5, 6, 7, 8]
},
{
label: 'Third Value',
data: [1, 2, 3, 4, 5, 6, 7, 8]
}
];
var result = arrayOfArrays.reduce(function(array1, array2) {
return array1.data.map(function(value, index) {
return value + array2.data[index];
}, 0);
});
console.log(result)
Run Code Online (Sandbox Code Playgroud)
输出应为数组的垂直和。[3,6,9,12,15,18,21,24]
问题是array1总是返回未定义的值。
在多个幻灯片项目上是否有关于动画的任何功能?我在单张幻灯片上尝试过它,但没有在多个项目幻灯片上工作.
您可以使用JSFiddle或以下代码进行调试.
$('.loop-test').owlCarousel({
center: true,
items: 2,
loop: true,
margin: 10,
animateOut: 'slideOutDown',
animateIn: 'flipInX',
dots: true
});
Run Code Online (Sandbox Code Playgroud)
<link href="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.2.0/assets/owl.theme.green.css" rel="stylesheet" />
<link href="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.2.0/assets/owl.theme.default.css" rel="stylesheet" />
<link href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.5.2/animate.css" rel="stylesheet" />
<link href="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.2.0/assets/owl.carousel.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.2.0/owl.carousel.min.js"></script>
<div class="owl-carousel loop-test">
<div> Your Content </div>
<div> Your Content </div>
<div> Your Content </div>
<div> Your Content </div>
<div> Your Content </div>
<div> Your Content </div>
<div> Your Content </div>
</div>
Run Code Online (Sandbox Code Playgroud)
任何指针将不胜感激!
谢谢.
我正在使用 pikaday 模块作为日期选择器,但格式不合适。我尝试添加这行代码但仍然不起作用:
.config(['pikadayConfigProvider', function (pikaday) {
pikaday.setConfig({
numberOfMonths: 1,
format: "YYYY/MM/DD"
});
}])
Run Code Online (Sandbox Code Playgroud)
这就是我的 html 的样子:
.config(['pikadayConfigProvider', function (pikaday) {
pikaday.setConfig({
numberOfMonths: 1,
format: "YYYY/MM/DD"
});
}])
Run Code Online (Sandbox Code Playgroud)
还尝试添加为内联属性
格式=“年/月/日”
还是行不通。
任何帮助
我正在使用autonumeric.js
生成货币数字格式,问题是自动数字在逗号后生成了 2 个零。例如40560000变成了40.560.000,00
我想删除最后 2 个零,所以autonumeric的结果不是40.560.000,00,而是40.560.000
这是我的脚本:
$('td.sub_total').autoNumeric('init', {aSep: '.', aDec: ','});
$('td.vat').autoNumeric('init', {aSep: '.', aDec: ','});
$('td.total').autoNumeric('init', {aSep: '.', aDec: ','});
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激,谢谢。
我正在使用Angular JS,我正在为英国邮政编码进行验证.问题是有一个特定的要求,即英国邮政编码中应该有一个空格,只能通过计算最后一个字符来识别.因为在第三个最后一个字符之前应该有一个空格它应该是这样的:
A12 3AD
A123 3AD
A2 2AD
为此,我有两个主要问题:
如何操纵输入值来诱导空间.
如何实际更改字符串以添加空间
我是新手,javascript/angular
有人可以告诉我该怎么做吗?
PS:我没有在项目中使用jQuery.
javascript ×10
arrays ×3
angularjs ×2
ecmascript-6 ×2
css ×1
css3 ×1
html ×1
jquery ×1
knockout.js ×1
matrix ×1
owl-carousel ×1
pikaday ×1
sum ×1
validation ×1