Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Javascript对象中使用HTML5音频_Javascript_Html_This - Fatal编程技术网

在Javascript对象中使用HTML5音频

在Javascript对象中使用HTML5音频,javascript,html,this,Javascript,Html,This,当我运行以下命令时 var obj = { array: ['1.mp3', '2.mp3', '3.mp3'], audio: new Audio(this.array[0]) }; var obj = { array: ['1.mp3', '2.mp3', '3.mp3'], }; var audio = new Audio(this.obj.array[0]); …我收到一个错误,表示它无法读取未定义的属性“0”。但是,当我运行以下命令时 var obj =

当我运行以下命令时

var obj = {
    array: ['1.mp3', '2.mp3', '3.mp3'],
    audio: new Audio(this.array[0])
};
var obj = {
    array: ['1.mp3', '2.mp3', '3.mp3'],
};

var audio = new Audio(this.obj.array[0]);
…我收到一个错误,表示它无法读取未定义的属性“0”。但是,当我运行以下命令时

var obj = {
    array: ['1.mp3', '2.mp3', '3.mp3'],
    audio: new Audio(this.array[0])
};
var obj = {
    array: ['1.mp3', '2.mp3', '3.mp3'],
};

var audio = new Audio(this.obj.array[0]);
…一切都很顺利。如何修复第一个示例?我是不是做错了
这个

如何修复第一个示例?我是不是做错了
这个

你不能。对象尚未创建,因此您无法使用

但是你可以这样做

var obj = {
    array: ['1.mp3', '2.mp3', '3.mp3'],
}; // object now created
obj.audio = new Audio(this.obj.array[0]); // set the property.
请注意,您可以参考
来参考函数内部的
obj
,但不能在函数外部

var obj = {
   prop: (console.log(this), "Some value") // most probably Window but never obj
   func: function(){
      console.log(this); // obj
   }
}
如何修复第一个示例?我是不是做错了
这个

你不能。对象尚未创建,因此您无法使用

但是你可以这样做

var obj = {
    array: ['1.mp3', '2.mp3', '3.mp3'],
}; // object now created
obj.audio = new Audio(this.obj.array[0]); // set the property.
请注意,您可以参考
来参考函数内部的
obj
,但不能在函数外部

var obj = {
   prop: (console.log(this), "Some value") // most probably Window but never obj
   func: function(){
      console.log(this); // obj
   }
}
如何修复第一个示例?我是不是做错了
这个

你不能。对象尚未创建,因此您无法使用

但是你可以这样做

var obj = {
    array: ['1.mp3', '2.mp3', '3.mp3'],
}; // object now created
obj.audio = new Audio(this.obj.array[0]); // set the property.
请注意,您可以参考
来参考函数内部的
obj
,但不能在函数外部

var obj = {
   prop: (console.log(this), "Some value") // most probably Window but never obj
   func: function(){
      console.log(this); // obj
   }
}
如何修复第一个示例?我是不是做错了
这个

你不能。对象尚未创建,因此您无法使用

但是你可以这样做

var obj = {
    array: ['1.mp3', '2.mp3', '3.mp3'],
}; // object now created
obj.audio = new Audio(this.obj.array[0]); // set the property.
请注意,您可以参考
来参考函数内部的
obj
,但不能在函数外部

var obj = {
   prop: (console.log(this), "Some value") // most probably Window but never obj
   func: function(){
      console.log(this); // obj
   }
}

问题在于在构造函数内部使用
this
:它不是指
obj
,而是指新的音频对象。您将无法使用
this
从那样的对象内部引用它。

问题是在构造函数内部使用
this
:它不是指
obj
,而是指新的音频对象。您将无法使用
this
从那样的对象内部引用它。

问题是在构造函数内部使用
this
:它不是指
obj
,而是指新的音频对象。您将无法使用
this
从那样的对象内部引用它。

问题是在构造函数内部使用
this
:它不是指
obj
,而是指新的音频对象。您将无法使用
从那样的对象内部引用它。

执行相同操作的另一种方法如下:

var-refArray=['1.mp3','2.mp3','3.mp3'];
var myObj={
数组:['1.mp3','2.mp3','3.mp3'],
音频:新音频(this.obj.array[0]);
};


这与其他答案中所述的操作相同,但允许您在定义myObj变量时添加音频对象(作为myObj的属性)。

另一种执行相同操作的方法如下:

var-refArray=['1.mp3','2.mp3','3.mp3'];
var myObj={
数组:['1.mp3','2.mp3','3.mp3'],
音频:新音频(this.obj.array[0]);
};


这与其他答案中所述的操作相同,但允许您在定义myObj变量时添加音频对象(作为myObj的属性)。

另一种执行相同操作的方法如下:

var-refArray=['1.mp3','2.mp3','3.mp3'];
var myObj={
数组:['1.mp3','2.mp3','3.mp3'],
音频:新音频(this.obj.array[0]);
};


这与其他答案中所述的操作相同,但允许您在定义myObj变量时添加音频对象(作为myObj的属性)。

另一种执行相同操作的方法如下:

var-refArray=['1.mp3','2.mp3','3.mp3'];
var myObj={
数组:['1.mp3','2.mp3','3.mp3'],
音频:新音频(this.obj.array[0]);
};


这与其他答案中所述的操作相同,但允许您在定义myObj变量时添加音频对象(作为myObj的属性)。

如果我错了,请纠正我,但我在web上看到过许多Javascript示例,在对象定义完成之前,使用
this
引用对象中的其他函数。一个这样的例子是audio.js的源代码:我明白了。谢谢你的澄清。如果我错了,我会接受的。@JaredCubilla很乐意帮助:)如果我错了,请纠正我,但我在web上看到过很多Javascript示例,在对象定义完成之前,在对象中使用
this
引用对象中的其他函数。一个这样的例子是audio.js的源代码:我明白了。谢谢你的澄清。如果我错了,我会接受的。@JaredCubilla很乐意帮助:)如果我错了,请纠正我,但我在web上看到过很多Javascript示例,在对象定义完成之前,在对象中使用
this
引用对象中的其他函数。一个这样的例子是audio.js的源代码:我明白了。谢谢你的澄清。如果我错了,我会接受的。@JaredCubilla很乐意帮助:)如果我错了,请纠正我,但我在web上看到过很多Javascript示例,在对象定义完成之前,在对象中使用
this
引用对象中的其他函数。一个这样的例子是audio.js的源代码:我明白了。谢谢你的澄清。当我能接受时,我会接受的。@JaredCubilla很乐意帮忙:)